我有以下内容:
class Test
{
public virtual IList<TestLike> TestLikes { get; set; }
}
我有一个看起来像这样的存储库方法:
IEnumerable<Test> GetTests()
{
return this.context.Tests;
}
当我在控制器中调用它时:
List<Test> tests = this.testRepository.GetTests().ToList();
然后在调试器中查看它,它还填充了附加到它的所有TestLikes
...我没有枚举调试器列出它们,它们就在那里
在我真正需要它之前,我该如何延迟这种情况?
答案 0 :(得分:2)
然后在调试器中查看它,它还填充了所有的 TestLikes也附在它上面......我没有必要 枚举调试器列出它们,它们就在那里。
看起来lazy loading已启用。导航到调试器本身内的属性会触发SQL请求。如果不查看调试器中的导航属性,则不会执行SQL请求。