十年河东,十年河西,莫欺少年穷... 今天是抄袭的别人的博客,不过我感觉蛮好,挺有用,特别是老板让你优化EF项目SQL耗时的情况下,你可以采用这种方式来优化你的LINQ. 时间很宝贵,废话还是不多说,直接入主题 MiniProfiler是一款针对.NET, Ruby, Go and Node.js的性能分析的轻量级程序.可以对一个页面本身,及该页面通过直接引用.Ajax.Iframe形式访问的其它页面进行监控,监控内容包括数据库内容,并可以显示数据库访问的SQL(支持EF.EF CodeFirs
如下: query = from c in query group c by c.Id into cGroup orderby cGroup.Key select cGroup.FirstOrDefault(); query = query.OrderBy(c => c.ParentCategoryId).ThenBy(c => c.DisplayOrder); System.Diagnostics.Trace.WriteLine(query.ToString()); 通过 Debug-&
Entity Framework为我们提供了很大的方便,但有时候,我们想看看EF生成的Sql语句到底是怎样的,一种方式是我们可以启用Sql Server Profer工具.今天介绍另外一种方式,非常简单,可以监听EF执行的每条Sql语句,而且也可以自定义在执行语句前,执行语句完成后的动作.通过这种方式也可以非常方便的去监听系统的运行日志. 完成这个功能,需要引入二个第三方的组件,分别是Clutch.dll和Clutch.Diagnostics.Enti
在EF 4和EF 3.5 SP1中,我们可以使用ToTraceString()方法得到EF查询所生成的SQL. using (var context = new TestDBEntities()) { var query = from p in context.Parents where p.Name == "zhaokun" select p; ObjectQuery<Parent> parents = query as ObjectQuery<Parent>
1.添加NuGet包:Microsoft.Extensions.Logging.Debug 2.添加单独类库用于后期维护:BCode.DataBase.Log 3.添加EFCoreLoggerProvider类 using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Text; namespace BCode.DataBase.Log { public cla