了解实体框架中的实体映射错误
在代码优先的实体框架方法中,您遇到了错误“实体类型不是当前环境模型的一部分。”这表明 DbContext 无法识别您尝试访问或修改的实体。
实体映射的作用
在代码优先中,EF 推断来自域类的实体和映射。但是,有时显式映射是必要的,特别是当实体名称或表名称不同时。自定义 DbContext 类中的 OnModelCreating 方法允许您定义此映射。
实体的自定义映射
要解决您的问题,请将以下代码添加到 OnModelCreating 方法中在您的 DbContext 中:
protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Entity<Estate>().ToTable("Estate"); }
这指示 EF 将 Estate 实体映射到“庄园”表。确保此表已存在于您的数据库中或已启用迁移。
其他提示
以上是为什么我的实体框架代码抛出'实体类型不是当前上下文模型的一部分”?的详细内容。更多信息请关注PHP中文网其他相关文章!