我已经接管了实体框架的项目。代码看起来很好,并且结构良好。问题是我已经多次看到Entity Framework,他们他们使用延迟加载很多。直到db获得一些数据并且sql查询刚刚达到峰值时,问题才会消失。实体框架 - 解决延迟加载的性能问题的最佳实践
该解决方案很好地利用了储存库的小而且获得一个级别的数据,当我处理一些最大的性能问题时,最常见的问题常常通过向加载的存储库添加特定函数来解决嵌套的实体并使用一些动态查询。
即GetCustomerWithOrderData,包括订单,订单行等
有时候,我不得不先合并两个查询获得客户(与包括关系),然后拿到订单(与包括),并通过LINQ一起制作地图。
查询比例子复杂得多,延迟加载可能出现在业务层,控制器或视图中,因此无法跟踪解决。
但我觉得代码非常大,我很难找到未来的问题。我现在需要的是一个很好的方式来跟踪何时进行延迟加载,并且还能够告诉在特定的调用中需要加载哪些对象。
最好的是,如果我可以跟踪特定的行动呼吁,并得到了哪些SQL执行,多少次,加载时等
的解决方案是建立与MVC 3和EF4,没有任何性能通过升级到更新的EF获得收益?
你有没有chekched [this](https://msdn.microsoft.com/en-us/data/hh949853.aspx)好文章?总而言之,从ef 4到6具有**大**性能改进。 –