在Entity Framework中将主键定义为虚拟

时间:2011-06-06 10:36:52

标签: entity-framework primary-key virtual lazy-loading change-tracking

在实体框架中将主键属性定义为虚拟有什么好处?

AFAIK,virtual用于导航属性中的延迟加载和其他属性中的更改跟踪。但是我们不需要主键中提到的任何功能。

那么,将主键定义为虚拟是否有用?

1 个答案:

答案 0 :(得分:1)

仅当所有非导航映射属性为virtual时,才会创建更改跟踪代理。 MSDN

  

映射到a的每个属性   数据中实体类型的属性   模特必须有非密封   (在Visual Basic中为NotOverridable),   public和virtual(Overridable in   Visual Basic)获取和设置访问器。