Asp.net .NET正在查询Aspnetusers而不是自定义AuthUser,但AspNetUser不存在

Asp.net .NET正在查询Aspnetusers而不是自定义AuthUser,但AspNetUser不存在,asp.net,asp.net-core,dot,Asp.net,Asp.net Core,Dot,我编写了一个自定义的身份验证程序,它是AuthUser public class AuthUser : IdentityUser { public int StudentsId { get; set; } public virtual Students StudentProfile { get; set; } public int InstructorId { get; set; } public virtual Inst

我编写了一个自定义的身份验证程序,它是AuthUser

public class AuthUser : IdentityUser
    {
        public int StudentsId { get; set; }
        public virtual Students StudentProfile { get; set; }

        public int InstructorId { get; set; }
        public virtual Instructor InstructorProfile { get; set; }

        public bool IsStudent { get; set; }
        public bool IsInstructor { get; set; }
    }
正如你所看到的,上下文是好的

 public class LmsContext : IdentityDbContext<AuthUser> //DbContext
    {
}
公共类LmsContext:IdentityDbContext//DbContext { } startup.cs已全部设置完毕

services.AddDbContext<LmsContext>(options =>
                options.UseSqlServer(
                Configuration.GetConnectionString("UCIPrimarySchool"))
                );
            services.AddDefaultIdentity<AuthUser>(options => options.SignIn.RequireConfirmedAccount = true)
                .AddEntityFrameworkStores<LmsContext>();

            services.AddControllersWithViews();
            services.AddRazorPages();
services.AddDbContext(选项=>
options.UseSqlServer(
Configuration.GetConnectionString(“UCIPrimarySchool”))
);
services.AddDefaultIdentity(options=>options.SignIn.RequireConfirmedAccount=true)
.AddEntityFrameworkStores();
services.AddControllersWithViews();
services.AddRazorPages();
但是当我尝试登录时,我得到了以下错误

An unhandled exception occurred while processing the request.
SqlException: Invalid object name 'AspNetUsers'.

Microsoft.Data.SqlClient.SqlCommand+<>c.<ExecuteDbDataReaderAsync>b__169_0(Task<SqlDataReader> result)
处理请求时发生未处理的异常。
SqlException:无效的对象名称“AspNetUsers”。
Microsoft.Data.SqlClient.SqlCommand+c.b__169_0(任务结果)

为什么is不查询扩展AuthUser,而是查询不存在的表AspNetUsers?

首先,您应该澄清您的关系,然后正确迁移和更新数据库

按以下方式更改AuthUser:

public class AuthUser : IdentityUser
{
    public virtual Students StudentProfile { get; set; }

    public virtual Instructor InstructorProfile { get; set; }

    public bool IsStudent { get; set; }
    public bool IsInstructor { get; set; }
}
在您的
上下文中

  public DbSet<Students>  Students { get; set; }
  public DbSet<Instructor> Instructor { get; set; }

@InjectSigninManager

选择您的LmsContext
添加


然后启动应用程序并登录。

您是否创建了迁移并更新了数据库?您的
AuthUser
学生和讲师之间的关系是什么?你能分享你的
学生
讲师
课程吗?是的,我更新了数据库,学生和讲师只是这两位候选人各自的个人资料。Teshi@wangolo joel,你能与我们分享
学生和讲师
模型吗?他们之间的关系是一对一吗?有趣的细节谢谢,我让关键部件工作起来了。
@inject SignInManager<IdentityUser> SignInManager
@inject UserManager<IdentityUser> UserManager
@inject SignInManager<AuthUser> SignInManager
@inject UserManager<AuthUser> UserManager