public class ApplicationDbContext : IdentityDbContext<WebUser, WebRole, Guid, WebUserClaim, WebUserRole, WebUserLogin, WebRoleClaim, WebUserToken> { public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : base(options) { } protected override void OnModelCreating(ModelBuilder builder) { base.OnModelCreating(builder); builder.Entity<WebUser>().ToTable("WebUsers"); builder.Entity<WebRole>().ToTable("WebRoles"); builder.Entity<WebRoleClaim>().ToTable("WebRoleClaims"); builder.Entity<WebUserRole>().ToTable("WebUserRoles"); builder.Entity<WebUserLogin>().ToTable("WebUserLogins"); builder.Entity<WebRoleClaim>().ToTable("WebRoleClaims"); builder.Entity<WebUserToken>().ToTable("WebUserTokens"); } }
实体:
public class WebUser : IdentityUser<Guid> { public string NickName { get; set; } }
依赖注入。
services.AddIdentity<WebUser, WebRole>(options => options.SignIn.RequireConfirmedAccount = true) .AddEntityFrameworkStores<ApplicationDbContext>();
别忘了cshtml中:
@inject SignInManager<WebUser> SignInManager
@inject UserManager<WebUser> UserManager