DbContext检测延迟加载

问题描述 投票:0回答:1

我想将我的实体框架代码转移到.net标准2.0,但我注意到不支持延迟加载。

无论如何都要检测DbContext中何时使用延迟加载。这样我就可以在转移到.net标准之前修复这些调用。

谢谢

史蒂夫

c# entity-framework-core lazy-loading
1个回答
0
投票

我假设您使用EF 6,因为您没有提到EF Core。

public class BloggingContext : DbContext
{
    public BloggingContext()
    {
        this.Configuration.LazyLoadingEnabled = false;
    }
}

以上将禁用上下文中的延迟加载。这可能是一种前进的方式。我并不是建议将其付诸实施和部署。我建议把它放到适当位置并进行测试。

除此之外,检查您的上下文实体上的任何“虚拟”成员可能会有所帮助。

问题注释和向下投票应该真正表明这不是检查您是否使用延迟加载的标准方法。在我看来,唯一确定的方法就是完成所有代码并检查上面的内容是否有帮助。

另外,如上所述。从2.1 https://docs.microsoft.com/en-us/ef/core/querying/related-data#lazy-loading开始,在EF Core中启用了延迟加载

© www.soinside.com 2019 - 2024. All rights reserved.