博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DebuggerDisplay和DebuggerTypeProxy
阅读量:6327 次
发布时间:2019-06-22

本文共 1494 字,大约阅读时间需要 4 分钟。

DebuggerDisplay和DebuggerTypeProxy是两个属性,用来在VS调试的状态下,显示一些额外的信息,方便用户进行调试。

 

DebuggerDisplay 不单能够显示变量的值,还能调用变量的方法来计算结果显示:

class Program    {        static void Main(string[] args)        {            Company c = new Company();            Console.ReadLine();        }    }    [DebuggerDisplay("company name:{name}, employee count:{employeeNames.Count}")]    class Company    {        public string name = "Company1";        List
employeeNames = new List
() { "Employee1", "Employee2", "Employee3" }; }

 

DebuggerTypeProxy 可以附加一些属性在VS调试窗口中,提供了更加灵活的方式。如果DebugView中的属性和类型本身的属性名字相同,那么类型的属性将会被覆盖,在VS调试器中看不见了。

 

class Program    {        static void Main(string[] args)        {            Company2 c2 = new Company2();            Debugger.Break();            Console.ReadLine();        }    }    [DebuggerTypeProxy(typeof(Company2DebugView))]    class Company2    {        internal class Company2DebugView        {            private Company2 m_Company2;            //必须要有一个构造函数,包含目标类型            public Company2DebugView(Company2 company2)            {                m_Company2 = company2;            }            public string Employees            {                get                {                    return String.Join(" | ", m_Company2.employeeNames.ToArray());                }            }        }        private string name = "Company2";        private List
employeeNames = new List
() { "Employee1", "Employee2", "Employee3" }; }

 

转载地址:http://xkwoa.baihongyu.com/

你可能感兴趣的文章
Object类及其常用方法简介
查看>>
怎样在Eclipse中使用debug模式调试程序
查看>>
对查询结果进行分页
查看>>
算法模板——并查集 2(支持快速即时查询本连通块内容,纯原创!)
查看>>
1630/2023: [Usaco2005 Nov]Ant Counting 数蚂蚁
查看>>
QC的OTA参考手册学习--第一篇
查看>>
初始java白盒测试--junit的使用
查看>>
redis持久化
查看>>
docker 1 为什么要使用docker
查看>>
牛客网上的最后一位
查看>>
常用Slider及Gallery
查看>>
lucene_03_索引的增删改查
查看>>
IText&Html2canvas js截图 绘制 导出PDF
查看>>
Maximum GCD (stringstream)题解
查看>>
HDU 3374 String Problem(最大最小表示+KMP)题解
查看>>
WindowManage与Window的在Activity的一点小应用
查看>>
#1036 – Table ‘* ‘ is read only
查看>>
Annotation(注解)介绍
查看>>
校门外的树2
查看>>
杭电2085--核反应堆(打表)
查看>>