2012-05-08 44 views
0

我刚刚将MiniProfiler连接到我的MVC3项目。我正在使用EF4.0并为我的实体生成POCO类。为什么Mini-Profiler只为SQL文本显示“ExecuteStoreCommands”?

如果很重要,这些生成的ObjectContext使用ObjectSet <>。我也在上下文中使用NInject作为IoC。 (我在RequestScope中有这些,但是我将它们改为TransientScope来解决这个问题)。

我所看到的所有分析都显示“ExecuteStoreCommands”作为查询。

有关为什么“ExecuteStoreCommands”会显示出来而不是SQL的任何想法?我看到在SQL事件探查器真正的SQL,看起来像这样:

exec sp_executesql N'SELECT 
[Project2].[OrderID] AS [OrderID], 
... 

我会遇到麻烦,因为我不是EF4.1/4.2/4.3?是否因为我没有使用CodeFirst?这是POCO吗?

回答

0

看起来我在使用MiniProfiler库时遇到了问题。 SqlTiming对象的序列化(通过FromJSON)保存FormattedCommandString,它只有一个get方法。在反序列化中,这意味着CommandStringFormattedCommandString都是null

快速(哈克)反序列之前修正为:

profilerString = profilerString.Replace("FormattedCommandString", "CommandString"); 
var profiler = MiniProfiler.FromJson(profilerString);     
+0

你能提高对http://community.miniprofiler.com错误 –

相关问题