Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 实体框架:渴望加载的行为类似于延迟加载_C#_Entity Framework_Entity Framework 6 - Fatal编程技术网

C# 实体框架:渴望加载的行为类似于延迟加载

C# 实体框架:渴望加载的行为类似于延迟加载,c#,entity-framework,entity-framework-6,C#,Entity Framework,Entity Framework 6,我有很多实体,它们相互关联。例如:我有学生实体,学生有一堆书。 当我试图通过说以下内容来加载学生时: dbContext.Students.FirstOrDefault() 它很好用。我可以看到生成的sql查询,它正在尝试只加载学生。当我尝试读取学生的Books属性时,它正在执行另一个查询以获取书籍。这是正确的。现在,我想通过以下查询在一次调用中加载学生的背包: dbContext.Students.Inclide("Books").FirstOrDefault(); 它正在生成SQL脚本以

我有很多实体,它们相互关联。例如:我有学生实体,学生有一堆书。 当我试图通过说以下内容来加载学生时:

dbContext.Students.FirstOrDefault()
它很好用。我可以看到生成的sql查询,它正在尝试只加载学生。当我尝试读取学生的Books属性时,它正在执行另一个查询以获取书籍。这是正确的。现在,我想通过以下查询在一次调用中加载学生的背包:

dbContext.Students.Inclide("Books").FirstOrDefault();

它正在生成SQL脚本以获取学生和书籍。这是正确的,但当我阅读学生的Books属性时,它正在向DB打另一个电话以获取书籍。我试图在一个较小的项目上复制它,但它在那个测试项目上有效。我做错了什么,在我的生产项目中,渴望加载不起作用?发布有问题的代码真的很复杂。

您是否在数据库上下文中禁用了延迟加载?@papadoble151否。我想使用Include也会带来同样的效果。在我的测试项目中,我并没有禁用LazyLoading和using Include,它可以正常工作。当错误无法在一个简单的测试项目中重现时,那么该错误一定与项目有关。。。可能DbContext或Students实体有问题。你能把这些代码添加到你的帖子里吗?(包括任何流畅的配置(如有)