1

首先,请看截图。

在此处输入图像描述

这是vs 2010的观察窗口。

我想将结构/类的一些子成员向上移动到父值字段中以便于调试。(在 C# 中)

是否可以?

4

4 回答 4

2

是的,对于您正在编写的课程。

使用DebuggerDisplay属性:

[DebuggerDisplay("N: {Name}; A1: {Address1}; A2: {Address2}; C: {City}; S: {State}; Z: {ZipCode}; P: {Phone}; F: {Fax}")]
internal class EntityAddress
{
...
}

或者为了您更简单的用法:

[DebuggerDisplay("{Content}")]
class MeanItem
{
...
}

每个括号中的项目都是对象的属性。使用此属性创建的字符串将完全按照您的要求显示。

MSDN 文档:使用 DebuggerDisplay 属性

于 2011-07-28T16:15:38.090 回答
1

在您的 MeanItem 类上方添加一个 DebuggerDisplay 属性。就像是:

[DebuggerDisplay("Content={Content}")]
public class MeanItem
{
...

{} 之间的值是您要在调试器中显示的属性的名称。

于 2011-07-28T16:15:53.803 回答
0

您可以访问 MeanItem 类的源代码吗?如果是这样,您可以重写 ToString() 方法以返回 MeanItem.Content 的值 - 这应该使其显示(而不是 UOC.DicData.MeanItem)。

于 2011-07-28T16:15:27.373 回答
0

您在示例中指向的区域只是ToString一个对象的表示(默认情况下,它显示类名)。

你可以在你的类中覆盖 ToString 并返回 Content

public override string ToString()
{
   return Content;
}
于 2011-07-28T16:16:22.950 回答