簡體   English   中英

在ASP.NET Core中自定義IdentityUserRole

[英]Customize IdentityUserRole in ASP.NET Core

在我的asp dotnet核心應用程序中,我將默認的IdentityUserIdentityRole更改為我自己的類MesUserMesRole

public class MesUser : IdentityUser<int>, IUser
{
    #region Property

    /// <summary>
    /// Osobní číslo
    /// </summary>
    [Column("ID")]
    public override int Id { get; set; }

    /// <summary>
    /// Křestní jméno
    /// </summary>
    [Column("FIRST_NAME")]
    public string FirstName { get; set; }

並在dbcontext中設置

public DbSet<MesUser> MesUsers { get; set; }

protected override void OnModelCreating(ModelBuilder builder)
{
    base.OnModelCreating(builder);

    builder.Entity<MesUser>().ToTable("COR_USERS").HasKey(t => t.Id);

但是,如果我對任何其他Identity類執行類似操作,則會收到錯誤消息:

無法在“ MesRoleUser”上配置密鑰,因為它是派生類型。 必須在根類型“ IdentityUserRole”上配置密鑰。 如果您不打算將'IdentityUserRole'包含在模型中,請確保您的上下文中的DbSet屬性中未包含它,在ModelBuilder的配置調用中沒有引用它,或者在包含的類型上從導航屬性引用了它在模型中。

我知道,僅鏈接不是規則,但是通過遵循此鏈接,您將學到:

  • 如何更改用戶密鑰類型,
    • 特別是您不需要覆蓋成員
  • 更改用戶身份密鑰的類型涉及許多類的更改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM