.NET/Visual Studio 使用对象的 ToString() 方法在调试器中查看对象时显示对象的值。我想显示具体信息,但由于框架在将对象转换为字符串时经常使用 .ToString(),因此我无法通过覆盖 ToString() 来实现。是否有一个属性可以用来告诉调试器使用不同的方法或属性?
最佳答案
使用DebuggerDisplayAttribute
[MSDN] 。您为它提供一个格式字符串,该字符串引用类中的字段/属性以在调试时显示,而不必弄乱 ToString()
。
[DebuggerDisplay("Count = {count}")]
class MyHashtable
{
public int count = 4;
}
它也适用于方法:
[DebuggerDisplay("{ToDebugString()}")]
public class SomeClass
{
public override String ToString()
{
return "Normal ToString()";
}
public String ToDebugString()
{
return "ToDebugString()";
}
}
关于c# - 如何在调试时使用 ToString 以外的委托(delegate)来显示对象的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9914321/