ASP.NET Core Identity--服务配置

添加ASP.NET Core Identity服务
1、添加包(选择对应版本)
Microsoft.AspNetCore.Identity.EntityFrameworkCore

在这里插入图片描述
2、将AppDbContext继承改为IdentityDbContext(IdentityDbContext继承与DbContext)

在这里插入图片描述
3、Startup.cs文件中,ConfigureServices注册服务

services.AddIdentity<IdentityUser, IdentityRole>().AddEntityFrameworkStores<AppDbContext>();

4、Configure中添加中间件

 app.UseAuthentication();

注意:顺序不能乱,必须在Routing之前,因为身份验证需要在进入mvc终端前就要进行

5、AppContext中重写OnModelCreating()方法

using Microsoft.AspNetCore.Identity.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace Student.Models
{
    public class StudentDbContext:IdentityDbContext
    {
        public StudentDbContext(DbContextOptions<StudentDbContext>options):base(options)
        {

        }

        public DbSet<Student> Student { get; set; }

        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
        //这里是添加种子文件
            modelBuilder.Seed();
            //因为已经重写了OnModelCreating,但Identity还需要调用基类的OnModelCreating(),所以需要使用base进行基类调用
            base.OnModelCreating(modelBuilder);
        }
    }
}


版权声明:本文为weixin_42888250原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。