2016-05-01 11 views
1

で終わる、私はアイデンティティテーブルのASPNETプレフィックスを削除するためにこれをした:私はユーザーにAspNetUsersを変更しましたが、私はApplicationUserに新しいproperiesを追加するとき、彼らはASPNETアイデンティティ2ではAspNetUsers

public class ApplicationDbContext : IdentityDbContext<ApplicationUser> 
{ 
    public ApplicationDbContext() 
     : base("DefaultConnection", throwIfV1Schema: false) 
    { 

    } 
    protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 
     base.OnModelCreating(modelBuilder); 

     modelBuilder.Entity<IdentityUser>().ToTable("Users"); 

     modelBuilder.Entity<IdentityRole>().ToTable("Roles"); 

     modelBuilder.Entity<IdentityUserRole>().ToTable("UserRoles"); 

     modelBuilder.Entity<IdentityUserClaim>().ToTable("UserClaims"); 

     modelBuilder.Entity<IdentityUserLogin>().ToTable("UserLogins"); 
    } 
    public static ApplicationDbContext Create() 
    { 
     return new ApplicationDbContext(); 
    } 
} 

しかし、私はこれを行うにしようとした場合、今:

public class ApplicationUser : IdentityUser 
{ 
    public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager) 
    { 
     // Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType 
     var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie); 
     // Add custom user claims here 
     return userIdentity; 
    } 

    public Profile Profile { get; set; } 

    public string FullName { get; set; } 

} 

を私は更新-データベースを実行した後、ユーザーテーブルに追加何のフィールドがありませんが、AspNetUsersテーブルはBCKで、姓とのFullNameフィールドがあります。

enter image description here

どのようにこれらのフィールドを[ユーザー]テーブルに追加するのですか。

+0

modelBuilder.Entity<IdentityUser>().ToTable("Users"); を交換して、あなただけのOnModelCreatingない、IdentityDbContextクラスのあなたのすべてを表示することができますか? – tmg

+0

が追加されました。ありがとう! – Kyle

+0

また、 'ModelUuilder'と同じテーブルに' ApplicationUser'を 'modelBuilder.Entity ()を追加することでマッピングする必要があります。ToTable(" Users ");' – CodeNotFound

答えて

1

「IdentityUser」を2回追加しています。一つここ:IdentityDbContext<ApplicationUser>、ここ1 modelBuilder.Entity<IdentityUser>().ToTable("Users");

modelBuilder.Entity<ApplicationUser>().ToTable("Users");

+0

それはありがとう! – Kyle

関連する問題