如何扩展AspNetUserRoles表

问题描述 投票:0回答:1

我有一个 .NET 应用程序,它使用 EntityFramework 6.2.0 来创建和管理我的数据库。我还有一个继承自

IdentityDbContext
的类。

我了解,在发出初始

update-database
命令后,我的数据库将使用
AspNetUserRoles
表创建,其中包含两列:
UserId
RoleId

我的问题是:如何扩展此表以包含两个附加列:

CreatedBy
UpdatedBy
,其中每列将保存一个 GUID 值。

我也希望通过代码更新这两列,因此将它们也作为属性添加到

IdentityUserRole
类中。

我已经尝试通过创建自定义

ApplicationUserRole
类并继承
IdentityUserRole
来做到这一点,但每当我尝试添加新的迁移时,我都会看到此
Discriminator
列弹出。

我有没有办法也取消这个新专栏?

.net entity-framework
1个回答
0
投票

你可以试试这个:

    public class ApplicationUser:IdentityUser<string>
    {
    }
    public class ApplicationRole : IdentityRole<string>
    {
    }
    public class ApplicationUserClaim : IdentityUserClaim<string>
    {
    }
    public class ApplicationUserRole : IdentityUserRole<string>
    {
        public Guid CreatedBy { get; set; }
        public Guid UpdatedBy { get; set; }
    }
    public class ApplicationUserLogin : IdentityUserLogin<string>
    {
    }
    public class ApplicationRoleClaim : IdentityRoleClaim<string>
    {
    }
    public class ApplicationUserToken : IdentityUserToken<string>
    {
    }

ApplicationDbContext.cs

    public class ApplicationDbContext : IdentityDbContext<ApplicationUser,ApplicationRole,string, ApplicationUserClaim, ApplicationUserRole, ApplicationUserLogin, ApplicationRoleClaim, ApplicationUserToken>
    {
        public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
            : base(options)
        {
        }
    }

更新结果

© www.soinside.com 2019 - 2024. All rights reserved.