2012-05-08 43 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錯誤 –

相關問題