ASP.net core 2.0.0 中 asp.net identity 2.0.0 的基本使用(二)—启用用户管理

时间:2021-12-02 11:01:35

修改和启用默认的用户账户管理和角色管理

一、在Models目录中添加ApplicationRole.cs类文件,如下

namespace xxxx.Models
{
    //将应用程序用户的属性添加到应用程序
    public class ApplicationRole : IdentityRole
      {
      }
}

二、修改startup.cs文件。

修改

public void ConfigureServices(IServiceCollection services)中的services.AddIdentity(约47行),

默认内容为services.AddIdentity<ApplicationUser, IdentityRole>()

改为services.AddIdentity<ApplicationUser, ApplicationRole>()。

三、修正此次修改造成的其他错误。

1、因为Guid的缘故会造成Controllers文件夹中的

AccountController.cs文件中

public async Task<IActionResult> Register(RegisterViewModel model, string returnUrl = null)

和  public async Task<IActionResult> ForgotPassword(ForgotPasswordViewModel model)

中的User.Id错误,提示为”无法从”System.Guid“转化为”string““。

修正方法将报错的User.Id修改为user.Id.ToString()。

2、同上修正ManageController.cs文件中的错误。

四、更新数据库。

在VS的程序包管理器控制台中输入Update-Database命令。

PM> Update-Database          //更新数据库