这应该是世界上最简单的事情,但我找不到任何相关信息。
作为一个临时的解决方案,我采用了这个办法。
ApplicationUser user = await db.Users.Where(u => u.Email == email).FirstOrDefaultAsync();
但我最初的设想是这样的:
await ApplicationUser user = userManager.GetUserAsync(email);
我已经有机会进入 userManager
在我的控制器中。
ApplicationUser firstUser = await userManager.FindByEmailAsync(email)
ApplicationUser secondUser = await userManager.FindByIdAsync(id)
ApplicationUser thirdUser= await userManager.FindByNameAsync(name)
你可以阅读完整的文章,并获得关于所有的信息。userManager
方法 此处
您可以使用 FindBy...()
方法来通过参数查找用户。
FindByEmailAsync()
获取与指定电子邮件地址的标准化值相关联的用户(如果有的话)。
FindByEmailAsync()
找到并返回一个用户,如果有的话,该用户拥有指定的电子邮件地址的标准化值。userId
.
FindByLoginAsync()
检索与指定的外部登录提供者和登录提供者密钥相关联的用户。
FindByNameAsync()
找到并返回一个拥有指定用户名的用户(如果有)。
var user = await userManager.FindByEmailAsync(email);
var user2 = await userManager.FindByIdAsync(id);
var loginProvider = "Github";
var providerKey = "Stian";
var user3 = await userManager.FindByLoginAsync(loginProvider, providerKey);
var user4 = await userManager.FindByNameAsync(userName);