【发布时间】:2016-12-07 16:38:00
【问题描述】:
我有一个带有一些属性的模型,我正在使用实体框架基于该模型创建一个新控制器,但它给我一个错误:There is no entity type EnquiryModel on DbContext ProjectName.Data.ApplicationDbContext。
Error Image
我还尝试使用以下方法将我的模型添加到应用程序的DbContext:
namespace Project.Data
{
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
: base(options)
{
}
public DbSet<EnquiryModel> EnquiryModel { get; set; }
protected override void OnModelCreating(ModelBuilder builder)
{
base.OnModelCreating(builder);
}
}
}
我已经重建了解决方案,但它仍然给我同样的错误。
有什么办法吗?
提前致谢。
【问题讨论】:
-
你试过了吗 public DbSet
EnquiryModel { get;放; } ? -
是的,我已经尝试将其放入 application.Dbcontext(也写在简介中)。
-
不一样,在你的问题中你没有为 DbSet 使用泛型,你能发布你的 DbContext 代码吗?
-
命名空间 Project.Data { public class ApplicationDbContext : IdentityDbContext
{ public ApplicationDbContext(DbContextOptions options) : base(options) { } public DbSet EnquiryModel { get;放; } 受保护的覆盖无效 OnModelCreating(模型构建器构建器){ base.OnModelCreating(构建器); } } } -
您的实体似乎没有密钥,您可以在 OnModelCreating 方法中设置密钥和其他配置
标签: asp.net asp.net-core entity-framework-core