[Debug] 自訂視覺化偵錯
目前在偵錯時,最常用的是要查看List<T>內,每個item的屬性,由於沒有視覺化偵錯,所以須一個一個打開來檢視,這樣的偵錯,多點幾個就要翻桌了...。
實作List<T>視覺化偵錯
根據msdn的說明,可以繼承DialogDebuggerVisualizer來自訂顯示的內容,此類別需要參考組件Microsoft.VisualStudio.DebuggerVisualizers。參考了國外文章,實作如下:
1.參考組件
ps:VS2015 參考14.0的版本
2.實作VisualizerObjectSource
此類別非必要項目,但由於內建實作IVisualizerObjectProvider的取得物件方式,會先將資料序列化,這表示被偵錯的類別都需要冠上SerializableAttribute。這樣太麻煩了,所以我們自行實作序列化。
3.建立顯示UI(VisualizerForm.cs),將資料顯示在GridView上
4.實作DialogDebuggerVisualizer
如何使用
1.建置完成後,將dll複製到C:\Users\[User]\Documents\Visual Studio 2015\Visualizers2.進入偵錯模式,在List<T>會出現放大鏡圖示
點選後,資料會以開窗的方式顯示在GridView上
完整範例下載