我有几个定义DebuggerDisplay属性的类。我想知道是否有一种方法可以基于另一个属性来定义一个DebuggerDisplay属性。如果我有以下类(class):
[DebuggerDisplay ("Text = {Text}")]
class A
{
public string Text {get;set;}
}
[DebuggerDisplay ("Property = {Property}")]
class B
{
public A Property {get; set;}
}
我想在B实例上看到A类,因为它是在A类DebuggerDisplay属性上定义的。取而代之的是,我在查看B类对象时将A类ToString()方法放到了调试器上。
最佳答案
不知道我是否正确理解了您的问题,但是请尝试:
[DebuggerDisplay("Property = {Property.Text}")]
public class B
{
public A Property { get; set; }
}
这将显示A的Text属性。
如果需要更复杂的控制,可以使用DebuggerTypeProxyAttribute