[C#]使用DebuggerDisplayAttribute自訂除錯監看訊息

[C#]使用DebuggerDisplayAttribute自訂除錯監看訊息

Introduction

DebuggerDisplayAttribute可為自己開發的類別,及其所包含的欄位與屬性,加上自訂的除錯監看訊息。

 

NameSpace

System.Diagnostics

 

Assembly

mscorlib (in mscorlib.dll)

 

DebuggerDisplayAttribute

一般我們在除錯的時候,都會使用Visual Studio IDE所內建的監看視窗來查看變數。但一個類別內含多個成員,往往我們要查看的、常用的就是那幾個。卻要展開才能查看,十分不便。

 

未展開時
image

 

展開時
image

 

而透過DebuggerDisplayAttribute,我們可以自訂除錯監看訊息,可把自己常看的變數資訊直接顯示。使用上很簡單,只要在類別上方或是屬性、類別的上方設定DebuggerDisplay即可。像是:


    class Person

其監看結果如下:
image

需特別注意,DebuggerDisplayAttribute參數在設定上,要帶入成員數值的地方需用"{}"包住。

 

Example



    {
        static void Main(string[] args)
        {
            Person larry = new Person("Larry",28);
        }
    }

    [System.Diagnostics.DebuggerDisplay("Name = {Name}, Year = {Year}")]
    class Person
    {
        [System.Diagnostics.DebuggerDisplay("Name = {Name}")]
        string Name { get; set; }
        int Year { get; set; }

        public Person(string name, int year)
        {
            this.Name = name;
            this.Year = year;
        }
    }

 

監看結果

image