尝试使用UserManager.CreateAsync(user,reg.password)代码时出现此错误。请帮忙。 还有一件事我安装了aspnet.identity.core软件包。但我无法参考它。当我尝试使用使用我无法找到它时参考它。
if (ModelState.IsValid)
{
var user = new ApplicationUser() { UserName = reg.username };
var result = await UserManager.CreateAsync(user, reg.password);
if (result.Succeeded)
{
await SignInAsync(user, isPersistent: false);
return RedirectToAction("Index", "Account");
}
else
{
AddErrors(result);
}
答案 0 :(得分:4)
这里的问题是您的代码试图直接在CreateAsync()
类上调用UserManager<TUser>
,而.CreateAsync()
需要在实例上调用UserManager<TUser>
。
在Identity包提供的样板代码中,这是通过AccountController
中定义的属性完成的:
public ApplicationUserManager UserManager
{
get
{
return _userManager ?? HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>();
}
private set
{
_userManager = value;
}
}
您的控制器中是否有这样的属性?