错误使用泛型类型 AspNet.Identity.usermanager<Tuser> 需要 1 种类型的参数?

Vin*_*Rao 0 .net c# asp.net asp.net-mvc-4 asp.net-identity

我在尝试使用 UserManager.CreateAsync(user, reg.password) 代码时收到此错误。请帮忙。还有一件事我安装了包 aspnet.identity.core 包。但我不能参考它。当我尝试使用 Using 引用它时,我找不到包。

        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);
            }
Run Code Online (Sandbox Code Playgroud)

JLR*_*she 5

这里的问题是,你的代码试图调用CreateAsync()直接在UserManager<TUser>类,而.CreateAsync()对一个被称为需求实例UserManager<TUser>

在 Identity 包提供的样板代码中,这是通过以下定义的属性完成的AccountController

public ApplicationUserManager UserManager
{
    get
    {
        return _userManager ?? HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>();
    }
    private set
    {
        _userManager = value;
    }
}
Run Code Online (Sandbox Code Playgroud)

你的控制器中有这样的属性吗?