У меня есть следующие настройки:Asp.net Идентичность DbContext
Я настроенный класс IdentityUser и IdentityRole, создавая свои собственные классы и наследование от классов идентичности
Также я получил свою модель предметной области на основе Entity Framework (через EDMX-Designer)
Поскольку я хочу продлить IdentityUser с помощью классов, которые находятся в моей обычной модели предметной области, I C повешен ТТ контекста данных для <#=Accessibility.ForType(container)#> partial class <#=code.Escape(container)#> : IdentityDbContext<ApplicationUser>
Вне сгенерированных файлов, я ве создал частичный класс от ApplicationDataContext так:
public partial class ApplicationDbContext
{
protected override void OnModelCreating(System.Data.Entity.DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<IdentityUser>().ToTable("User", "portal").Property(p => p.Id).HasColumnName("UserId");
modelBuilder.Entity<ApplicationUser>().ToTable("User", "portal").Property(p => p.Id).HasColumnName("UserId");
modelBuilder.Entity<IdentityUserRole>().ToTable("UserRoles", "portal");
modelBuilder.Entity<IdentityUserLogin>().ToTable("UserLogins", "portal");
modelBuilder.Entity<IdentityUserClaim>().ToTable("UserClaims", "portal");
modelBuilder.Entity<UserStoreAssignment>().ToTable("UserStoreAssignment", "portal");
modelBuilder.Entity<ApplicationRole>().ToTable("Roles", "portal");
}
new public DbSet<ApplicationRole> Roles { get; set; }
}
Класс UserStoreAssignment
указывает на класс Store
, который находится в модель домена. Все можно успешно построить. Но как только я начинаю доступ к ApplicationUser
внутри моего приложения, я получаю следующее сообщение об ошибке:
Объект типа ApplicationUser не является частью модели для текущего контекста.
Кто-нибудь знает, в чем проблема?