C# 在调试模式下,是否有方法告诉Visual Studio在默认情况下显示某些成员值?

C# 在调试模式下,是否有方法告诉Visual Studio在默认情况下显示某些成员值?,c#,visual-studio,debugging,.net-4.0,visual-studio-2013,C#,Visual Studio,Debugging,.net 4.0,Visual Studio 2013,某些.NET类必须在类或单个成员上设置某种属性,以便在调试模式下将鼠标悬停在对象上时,告诉它在默认情况下显示这些成员的值。下面是一个例子: 在类型中的所有成员中,只有名称和全名在对象完全折叠时显示。我希望对我自己的一些类也这样做,这样我就可以在默认情况下显示实体的ID和名称成员。我有办法做到这一点吗 注意:我的问题与VS 2013有关,但如果知道如何为早期版本(如2010年或更早版本)以及使用旧版本的版本执行此操作,那就太好了。我也在使用C#4.0,以防在语言和.NET框架之间实现的方法有所不

某些.NET类必须在类或单个成员上设置某种属性,以便在调试模式下将鼠标悬停在对象上时,告诉它在默认情况下显示这些成员的值。下面是一个例子:

类型
中的所有成员中,只有
名称
全名
在对象完全折叠时显示。我希望对我自己的一些类也这样做,这样我就可以在默认情况下显示实体的ID和名称成员。我有办法做到这一点吗

注意:我的问题与VS 2013有关,但如果知道如何为早期版本(如2010年或更早版本)以及使用旧版本的版本执行此操作,那就太好了。我也在使用C#4.0,以防在语言和.NET框架之间实现的方法有所不同

你可以在课堂上使用它,比如

[DebuggerDisplay("Name = {Name}, Id = {Id}")]
public class MyClass
{
    public string Name { get; set; }
    public int Id { get; set; }
}

对于您自己的类型,您可以使用将在那里使用的自定义
ToString
实现。但这肯定不是问题的答案。另请参见:向上投票。但是您应该提到,在缺少
DebuggerDisplayAttribute
的情况下,将使用
ToString()
覆盖。因此,如果字符串表示法更普遍地有用(不仅仅是在调试期间),就可以替代
ToString()
。很好!即使这是一个骗人的问题,我还是会把它保留下来,以便更容易找到,因为这是一个罕见的问题,你必须知道答案才能提出正确的问题。