有谁知道我们是否可以在 Entity Framework 4.1 Code First 中排除列的更新?例如,我有“CreatedOn”字段,我不想在进行编辑/更新时包含该字段。这是否可能,即有选择地从 EF Code First 4.1 中的更新操作中排除字段?
如果您正在使用附加实体,则 EF 将仅为已更改的字段生成更新。如果您正在使用分离的实体,则必须手动告诉 EF 发生了什么变化。如果你这样称呼:
context.Entry(yourEntity).State = EntityState.Modified;
你是说 EF 所有属性都应该修改。但如果你这样称呼:
context.Entry(youreEntity).Property(e => e.SomeProperty).IsModified = true;
你会说只有SomeProperty
已修改(仅更新此属性)。我不确定您是否可以通过将整个实体标记为已修改并选择不应修改的属性来执行反向操作,但您可以自己测试。
If your CreatedOn
已填入数据库,您可以将其标记为DatabaseGeneratedOption.Identity
并且它永远不会被您的应用程序修改。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)