Entity framework 4 EF查询执行两次

Entity framework 4 EF查询执行两次,entity-framework-4,linq-to-entities,Entity Framework 4,Linq To Entities,在探查器中查看时,我看到这将执行两次。这是为什么?我如何防止这种情况发生。你确定吗?它可能是语句的开始和结束吗?是的,我在Sql profiler中查看它。在调用result.ToList()之前,不会执行任何查询。一旦调用了。ToList()我会看到它执行了两次。batch start和batch complete有两次,因此在我的测试中,分析器窗口中总共有个for条目。但是,当我使用userI时,我会尝试下载EF-Prof()的免费试用版,以确保查询运行两次。还可以尝试这样做:var lis

在探查器中查看时,我看到这将执行两次。这是为什么?我如何防止这种情况发生。

你确定吗?它可能是语句的开始和结束吗?是的,我在Sql profiler中查看它。在调用result.ToList()之前,不会执行任何查询。一旦调用了。ToList()我会看到它执行了两次。batch start和batch complete有两次,因此在我的测试中,分析器窗口中总共有个for条目。但是,当我使用userI时,我会尝试下载EF-Prof()的免费试用版,以确保查询运行两次。还可以尝试这样做:var list=_context.Categories.Where(c=>c.ParentCategoryID==null.ToList();
[Test]
    public void GetSomeData()
     {
         myEntities _context = new myEntities();
         var result = from c in _context.Categories.Select(c => c.ParentCategoryID == null)
                      select c;
         var list = result.ToList();
     }