C# 何时必须使用DebuggerDisplay属性?使用这个有什么好处?

C# 何时必须使用DebuggerDisplay属性?使用这个有什么好处?,c#,attributes,debuggerdisplay,C#,Attributes,Debuggerdisplay,何时必须使用DebuggerDisplay属性?使用这个有什么好处?这很好地解释了这一点。 您可以在类上使用此属性,以便在调试时显示更有意义的文本。例如: 假设您在以下类中有一个: [DebuggerDisplay("x = {x} y = {y}")] MyClass { private int x; private int y; ... } 在Visual Studio调试器中调试MyClass的实例并将鼠标悬停在其上(或将其放在监视窗口中)后,您将不再在那

何时必须使用DebuggerDisplay属性?使用这个有什么好处?

这很好地解释了这一点。 您可以在类上使用此属性,以便在调试时显示更有意义的文本。例如: 假设您在以下类中有一个:

[DebuggerDisplay("x = {x} y = {y}")]    
MyClass
{
    private int x;
    private int y;
    ...
}
在Visual Studio调试器中调试MyClass的实例并将鼠标悬停在其上(或将其放在监视窗口中)后,您将不再在那里看到
“MyClass”
,而是看到
“x=4 y=5”
(假设此实例的x和y当前具有此值。这只是一个示例,您可以按照本文的说明做更多的事情。

该属性设置在调试器中查看类或字段时类或字段的显示方式

例如,您可以让调试器实际显示对象存储的地址,而不是看到类型为Address的变量


它只会使调试变得更容易一点!当调试变得更容易时,程序员的生活会变得更加愉快!;-)

要回答您的问题,您应该在何时使用它,我的建议是针对每一个具有有意义的数据属性的业务对象类。特别重要的是对于集合中的任何类。因为在展开“结果”视图时,集合中的类只能看到完全合格的编辑类型名称,并且必须单独展开每个结果以查看它是哪个项

但是,使用DebuggerDisplay属性时,在调试包含集合的代码时,可以在“快速观察”窗口的“结果”视图中看到您认为最重要的属性