实体框架代码首先是逆向工程师标识列插入

时间:2015-02-01 19:47:41

标签: entity-framework entity-framework-6

我使用EntityFramework作为我的ORM。我使用逆向工程师创建了我的代码模型,并将生成的域对象移动到我的核心层。

当我尝试创建一个新实体,在数据库中有一个带有身份增量的标识列,并且执行SaveChanges()时 - 它失败了。我使用分析器来查看发送到数据库的内容,并且我看到它尝试插入标识列,其中零作为值(因为它是一个整数,它自动被赋值为零作为值)。

如何告诉Entity Framework映射在插入时忽略此字段? (我不想在域对象上执行此操作 - 我希望尽可能保持域对象没有特定注释)

修改

这似乎是因为我已经完成了继承。我创建了一个继承自我试图插入的对象的对象 - 但我不明白为什么会这样做。

1 个答案:

答案 0 :(得分:0)

使用Key属性或将DatabaseGenerationOption.Computed传递到DatabaseGenerated