我有一个简单的测试项目来演示我的工作项目中的问题。
我的edmx模型如下所示:
一切正常。 但是,当我在我的数据库的Test表中添加一个新字段并更新我的edmx模型时,我收到一个错误:
从第108,114行开始映射片段的问题:没有映射 为Set中的属性BaseHistoryEntity.CREATED_DATE指定 BaseEntitySet。具有密钥(PK)的实体在以下情况下不会往返: 实体是类型[Model.TABLE1]
因此,当我将edmx文件作为xml打开时,我发现,c-s映射内容部分中CREATED_DATE
的{{1}}字段已消失:
Table1
手动添加时
<MappingFragment StoreEntitySet="TABLE1">
<ScalarProperty Name="Id" ColumnName="ID" />
<ScalarProperty Name="TABLE2_ID" ColumnName="TABLE2_ID" />
<ScalarProperty Name="FIELD1" ColumnName="FIELD1" />
</MappingFragment>
我的pgoject构建没有错误,一切都很好。当我再次更新我的edmx模型时。 <ScalarProperty Name="CREATED_DATE" ColumnName="CREATED_DATE" />
字段将再次消失。
它是EntityFramework的错误吗?手动添加字段非常不舒服。
答案 0 :(得分:0)
你不能编辑xml文件,也不能编辑设计器类,因为它们是自动生成的,如果你编辑它们就不会有构建错误,但是你会有不同的意外行为