【问题标题】:Migrations is not detecting added property to ApplicationRole : IdentityRole迁移未检测到 ApplicationRole 的添加属性:IdentityRole
【发布时间】:2018-04-22 18:40:59
【问题描述】:

我正在尝试向 ASP.NET Core Identity 中的 AspNetRoles 表添加一个属性。我假设过程如下:

  1. 创建一个实现 IdentityRole 的 ApplicationRole 类,就像 ApplicationUser 实现 IdentityUser 一样。

  2. 向 ApplicationRole 类添加新属性。

  3. 必要时在整个应用程序中将 IdentityRole 替换为 ApplicationRole。

services.AddIdentity<ApplicationUser, ApplicationRole>()
    .AddEntityFrameworkStores<ApplicationDbContext>()
    .AddDefaultTokenProviders();
  1. 添加迁移

在添加迁移的第 4 步中,我最终得到一个空的迁移文件。知道为什么在向 ApplicationUser 添加其他属性然后添加迁移时这不起作用吗?

我注意到 ApplicationDbContext 实现了 IdentityDbContext。如何将我的 ApplicationRole 添加到此。我相信这是我的问题。

【问题讨论】:

    标签: c# asp.net-core asp.net-core-mvc asp.net-identity asp.net-identity-3


    【解决方案1】:

    我不知道你的ApplicationDbContext怎么样,但我认为你必须在它的声明中加入这样的东西:

    public class ApplicationDbContext : IdentityDbContext<ApplicationUser, ApplicationRole, string>
    

    【讨论】:

    • 我假设如果我只想使用默认的 GUID 功能,我会传入字符串?
    • 是的,默认id是字符串。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-24
    • 2018-12-09
    • 2014-09-15
    • 1970-01-01
    • 1970-01-01
    • 2015-09-13
    • 1970-01-01
    相关资源
    最近更新 更多