首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Asp.net恒等DbContext

Asp.net恒等DbContext
EN

Stack Overflow用户
提问于 2014-02-10 13:14:05
回答 1查看 580关注 0票数 0

我有以下设置:

  1. 我通过创建自己的类并从Identity类继承来定制IdentityUser和IdentityRole类
  2. 此外,我还有基于实体框架的域模型(通过edmx-Designer)

由于我想通过使用常规域模型中的类来扩展IdentityUser,所以我将数据上下文的TT更改为<#=Accessibility.ForType(container)#> partial class <#=code.Escape(container)#> : IdentityDbContext<ApplicationUser>

在生成的文件之外,我从ApplicationDataContext创建了一个部分类,如下所示:

代码语言:javascript
复制
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不是当前上下文模型的一部分。

有人知道,问题可能是什么吗?

EN

回答 1

Stack Overflow用户

发布于 2014-02-27 19:02:09

听起来,您正在尝试将ApplicationUser映射到表中,但实际上还没有通过设计器将ApplicationUser添加到上下文中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21678278

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档