請在C sharp中尋求一些關於類型轉換的幫助。我正在使用MVC和Entity Framework核心創建一個應用程序。現在我正在實現身份驗證,但是當我創建異步方法時,出現錯誤「無法隱式地將類型'GymBuddy.Data.Entities.RepoUser'轉換爲'System.Threading.Task.Task'。 我已閱讀了一些文章關於類型轉換,但我仍然不清楚這個問題。不一定尋找答案,但也許一些方向如何進一步探索這個問題。在此先感謝。隱式轉換 - mvc應用程序
首先,我創建了RepoUser類與幾個簡單屬性。
using Microsoft.AspNetCore.Identity;
namespace GymBuddy.Data.Entities
{
public class RepoUser : IdentityUser
{
public string FirstName { get; set; }
public string SecondName { get; set; }
}
}
其次,我創建了一個類,將在未來的種子數據庫,但也將檢查用戶是否存在。
using GymBuddy.Data.Entities;
using Microsoft.AspNetCore.Identity;
using System.Threading.Tasks;
namespace GymBuddy.Data
{
public class GymBuddySeeder
{
private readonly UserManager<RepoUser> _userManager;
public GymBuddySeeder(UserManager<RepoUser> userManager)
{
_userManager = userManager;
}
public async Task Seed()
{
var user = _userManager.FindByEmailAsync("[email protected]");
if (user == null)
{
user = new RepoUser()
一旦I型「RepoUser」(在這裏基本上與第一行)上述錯誤信息彈出。
在此先感謝。
假設FindByEmailAsync實際上是一個異步方法,它可能會返回一個Task。這意味着用戶是一個任務而不是回購用戶。因此,當您嘗試將用戶(任務)設置爲新的RepoUser時,您會遇到不存在隱式轉換的類型不匹配。 – Kevin