我有一个带有一些属性的模型,我正在使用实体框架创建一个基于该模型的新控制器,但它会抛出一个错误: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);
}
}
}
我重建了解决方案,但它仍然给我同样的错误。
任何解决方案?
提前致谢。
答案 0 :(得分:0)
使用以下命令修改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)
{
// I'm assuming you have a property with name EnquiryID
builder.Entity<EnquiryModel>().HasKey(p => p.EnquiryID);
base.OnModelCreating(builder);
}
}
}
您需要为您的实体定义一个密钥。
请告诉我这是否有用。