gpt4 book ai didi

ef-code-first - 在 Entity Framework 4.1 Code First 中排除列可更新

转载 作者:行者123 更新时间:2023-12-04 04:47:51 24 4
gpt4 key购买 nike

有谁知道我们是否可以在 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被修改(只有这个属性会更新)。我不确定您是否可以通过将整个实体标记为已修改并选择不应修改的属性来执行反向操作,但您可以自己测试它。

如果您的 CreatedOn填写数据库可以标记为 DatabaseGeneratedOption.Identity并且它永远不会被您的应用程序修改。

关于ef-code-first - 在 Entity Framework 4.1 Code First 中排除列可更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6115406/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com