【问题标题】:Lazy loading, change tracking, virtual keyword and primary key properties延迟加载、更改跟踪、虚拟关键字和主键属性
【发布时间】:2012-09-18 13:24:42
【问题描述】:

我应该将 virtual 关键字添加到我的主键属性中吗?

在阅读了延迟加载、更改跟踪和虚拟关键字之后,我意识到我几乎应该将所有属性都标记为虚拟。不过我不太确定我的 ID 属性,因为加载没有 ID 的实体是没有意义的,它只会用于更有效的更改跟踪。

【问题讨论】:

    标签: .net entity-framework


    【解决方案1】:

    您想要更改跟踪代理吗?如果是这样,您的所有属性都必须有 virtual 关键字。

    • 类必须是公开的而不是密封的。
    • 所有属性都必须具有公共/受保护的虚拟 getter 和 setter。
    • 必须将集合导航属性声明为 ICollection。它们不能是 IList、List、HashSet 等。

    看到这个blog post by a member of the EF team

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-16
      相关资源
      最近更新 更多