为了账号安全,请及时绑定邮箱和手机立即绑定

ASP.NET Core 2.1 - IdentityUser 问题 - 无法为

ASP.NET Core 2.1 - IdentityUser 问题 - 无法为

C#
HUWWW 2021-07-21 22:07:27
我已将代码从 ASP.NET Core 2.0 升级到 Core 2.1。我创建了一个新的 Core 2.1 项目并将我的代码移动到新项目中。我提供了我的初创公司的样本和ApplicationDbContext尝试登录时出现以下错误无法为“IdentityUser”创建 DbSet,因为此类型未包含在上下文的模型中。Microsoft.EntityFrameworkCore.Internal.InternalDbSet.get_EntityType()启动文件//Core 2.1  services.AddDefaultIdentity<IdentityUser>()            .AddEntityFrameworkStores<ApplicationDbContext>()            .AddDefaultTokenProviders();            ////Old Core 2.0 Code  //services.AddIdentity<ApplicationUser, IdentityRole>()        //    .AddEntityFrameworkStores<ApplicationDbContext>()        //    .AddDefaultTokenProviders();应用程序数据库上下文.cspublic partial class ApplicationDbContext :     IdentityDbContext<ApplicationUser>{    public ApplicationDbContext(DbContextOptions<ApplicationDbContext>  options)        : base(options)    {        Database.EnsureCreated();     } }
查看完整描述

3 回答

?
慕仙森

TA贡献1827条经验 获得超7个赞

尝试更改public partial class ApplicationDbContext : IdentityDbContext<ApplicationUser>public partial class ApplicationDbContext : IdentityDbContext<IdentityUser>

编译器将使用提供给泛型类的类型生成DbSetIdentityDbContext<TUser>


查看完整回答
反对 回复 2021-07-31
?
喵喔喔

TA贡献1735条经验 获得超5个赞

从您的 startup.cs 更改

services.AddDefaultIdentity<IdentityUser>()

services.AddDefaultIdentity<ApplicationUser>()


查看完整回答
反对 回复 2021-07-31
?
守着一只汪

TA贡献1872条经验 获得超3个赞

作为跟进:为了避免下一个可能的问题,一旦这里得到修复:您还必须更改 Views\Shared_LoginPartial.cshtml



@inject SignInManager<IdentityUser> SignInManager

@inject UserManager<IdentityUser> UserManager


@inject SignInManager<ApplicationUser> SignInManager

@inject UserManager<ApplicationUser> UserManager


查看完整回答
反对 回复 2021-07-31
  • 3 回答
  • 0 关注
  • 236 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信