程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 發布:.NET開發人員必備的可視化調試工具(你值的擁有),.net調試工具

發布:.NET開發人員必備的可視化調試工具(你值的擁有),.net調試工具

編輯:C#入門知識

發布:.NET開發人員必備的可視化調試工具(你值的擁有),.net調試工具


1:如何使用

1:點擊下載:.NET可視化調試工具

2:解壓RAR後執行:CYQ.VisualierSetup.exe 成功後關掉提示窗口即可。

PS:一次運行,支持各個VS版本,終身提高調試的效率,而且沒任何副作用。

2:開源及後續升級地址:

開源地址:http://code.taobao.org/svn/cyqopen/trunk/CYQ.Visualizer/

後續升級獲取地址:https://github.com/cyq1162/cyqdata 在文檔目錄下。

3:功能介紹

 1:支持字符串的Json轉表格查看:

2:支持NameValueCollection(Request.Form、Request.QueryString)、HttpCookieCollection(Request.Cookies) 表格查看

Cookies:

Request.Form、Request.QueryString

3:其它的就不截圖,同時還支持以下類型:

1:System.Drawing.Image:(這個轉圖片查看)

2:MDataTable系列:表、行、列、結構

3:DataTable系列:表、行、列、結構

4:泛型系列:Dictionary<,>、LinkedList<>、List<>、Queue<>、SortedDictionary<,>、SortedList<,>、Stack<>

5:非泛型系列:ArrayList、Hashtable、Queue、SortedList、Stack

6:其它繼承自:Enumerable 接口的類型:(類型太多,未來得及一一測試)

BitArray、ReadOnlyCollectionBase、HybridDictionary、ListDictionary、StringCollection、StringDictionary、BaseCollection等

4:研究過程

關於可視化調試這一塊內容,網上一搜,相關的信息全部是我自己以前發過的文章,悲催就一個字。。。。

看來沒啥人研究這一塊,好在蒼天不負有心人,還是被我突圍了。。。。。

能出來這麼簡易的工具,經歷的過程是:

1:曾經發布簡單的教程:自定義可視化調試工具(Microsoft.VisualStudio.DebuggerVisualizers)

2:收集了不同的VS版本的DLL(Microsoft.VisualStudio.DebuggerVisualizers.dll)。

3:寫了個工具,批量Copy:開源發布:VS代碼段快捷方式及可視化調試快速部署工具

4:想到了復制多個項目文件來實現多個VS版本編繹(如果想不到這個,估計也不會折騰):

5:解決了系列化問題(才能大規模的支持各種類型):

默認情況下,不支持系列化的類是不支持可視化的,因此,想支持DataRow查看都不行,會直接拋異常。

為了解決這一問題,進行了互聯網搜索(相關信息,國內基本是我自己的文章,國外好不容易搜到一篇)。

通過研究,終於解決了這一難題:

 public class EnumerableVisualizerObjectSource : VisualizerObjectSource
    {
        public override void GetData(object target, System.IO.Stream outgoingData)
        {
            if (target is NameObjectCollectionBase)
            {
                target = MDataTable.CreateFrom(target as NameObjectCollectionBase);
            }
            else
            {
                target = MDataTable.CreateFrom(target as IEnumerable);
            }
            base.GetData(target, outgoingData);

        }
    }

自定義數據源,在設置數據源時,把對象轉換成MDataTable,再由MDataTable去系列過去。

6:MDataTable要支持和大量類型的轉換工作(這些年的工作已經完成了不少,只需要再補全即可)。

總結:

上一篇文章發布的時候,有網友還看不懂是用來干什麼,一個唉~~~字了了。

這一次,在集滿了所有的條件之下,花了一天的研究時間,直接寫成了工具分享給你。

而你只要下載,再輕輕雙擊一下,就得能得良好的調試體驗!

在你開發調試的過程中,可以很輕松的查看變量的所有數據!!!

媽媽再也不用擔心你的調試能力了~~~

不要問我理由~~~我不是雷鋒塔下的雷~~~

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved