根据文档,如果将虚拟关键字应用于导航属性,则会启用延迟加载。
在另一个文档中,它说,要禁用延迟加载,您需要应用此代码
上下文。Configuration.LazyLoadEnabled = false;
从逻辑上讲,为什么不首先应用虚拟关键字呢?
我不明白为什么把事情复杂化?
谢谢。
将 virtual 关键字应用于导航属性的原因是限制在默认情况下调用数据库时加载整个依赖树。 查看这些其他 SO 问题/答案。
为什么导航属性在 EF 中默认为虚拟
为什么在实体框架模型定义中对类属性使用"virtual"?