我正在使用Entity Framework对我的数据库执行一些相当复杂的查询。我知道EF第一次运行查询时,需要在执行之前编译查询。我想测量这需要多长时间。我在其他地方使用MiniProfiler,我希望只有一个方法,我可以覆盖并用计时器包装。最好的情况是,某种EF类有一个我可以覆盖的CompileQuery
方法。
这样的事情是否存在,或者我有另一种方法来衡量实体框架编译查询所需的时间吗?
答案 0 :(得分:1)
您可以尝试使用ToString()
,它会将IQueryable
转换为SQL语句。
var watch = new Stopwatch();
watch.Start();
query.ToString();
watch.Stop();