• (转).NET开发人员必备的可视化调试工具(你值的拥有)


     1:如何使用

    1:点击下载:.NET可视化调试工具 (更新于2016-11-05 20:55:00)

    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要支持和大量类型的转换工作(这些年的工作已经完成了不少,只需要再补全即可)。

    总结:

    上一篇文章发布的时候,有网友还看不懂是用来干什么,一个唉~~~字了了。

    这一次,在集满了所有的条件之下,花了一天的研究时间,直接写成了工具分享给你。

    而你只要下载,再轻轻双击一下,就得能得良好的调试体验!

    在你开发调试的过程中,可以很轻松的查看变量的所有数据!!!

    妈妈再也不用担心你的调试能力了~~~

    不要问我理由~~~我不是雷锋塔下的雷~~~

    原文地址:http://www.cnblogs.com/cyq1162/p/6027051.html 

  • 相关阅读:
    谈谈对Javascript构造函数和原型对象的理解
    JS 实现无缝滚动动画原理(初学者入)
    $($('.className').html( )选择器的工作原理
    jquery中attr和prop的区别
    用for循环筛选奇偶表格栏
    insertBefore 和 insetAfter函数详解
    getNextElement( )函数——获取下一个特定的元素节点
    IDEA + SSH OA 第一天(项目收获:Hibernate XML)
    IDEA + SSH OA 第一天(IDEA 文件夹类型了解)
    IDEA + SSH OA 第一天(Hibernate : Mapping (RESOURCE) not found)
  • 原文地址:https://www.cnblogs.com/tangge/p/6061493.html
Copyright © 2020-2023  润新知