我想不時使用MiniProfiler來剖析我的代碼,但我不想分支並不斷重新介紹它;我想將它留在那裏,並在我不使用時從我的佈局模板中刪除@MiniProfiler.RenderIncludes()
呼叫。然而,我的代碼仍然是這樣的:使用MiniProfiler的Step()IDisposable添加有多少開銷?
using (MiniProfiler.Current.Step("Generate events index view model")) {
_thisStep = MiniProfiler.Current.Step("Check query string");
int pageIndex = 0;
// Do check...
_thisStep.Dispose();
// Do other stuff...
}
在多少開銷將離開這些Step
那兒和處理它們引起?有沒有辦法告訴MiniProfiler我沒有使用它,所以Step
基本上什麼都不做,但我仍然可以將它留在我的代碼?
「我建議您不要在使用塊的外部存儲IDispoable的地方使用語法,因爲您不會在.Dispose()調用中自動進行空值檢查」......這就是爲什麼我實際上使用我創建的DisposeIfNotNull()擴展方法。該示例僅使用標準方法。 :-) – Jez 2013-05-01 08:41:54
在我們的觀點中的幾個地方,我們確實會傳遞步驟......我將不得不添加該擴展方法,這是個好主意! – 2013-05-01 17:02:50