Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#-在调试期间在VS中显示有关自定义对象的信息_C# - Fatal编程技术网

C#-在调试期间在VS中显示有关自定义对象的信息

C#-在调试期间在VS中显示有关自定义对象的信息,c#,C#,我有一组C#类,扩展了一个抽象类。父级上有一个抽象方法void Show()。扩展类是具有圈的图的一部分。Show的实现多次调用Console.Write()。在控制台写入之间有递归调用和其他调用 我的问题是,如果没有查看图形状态的简单方法,调试非常困难。我已经尝试过使该方法string Show(),但是很难正确处理所有的递归和循环。你能建议一个更好的方法吗 谢谢,Sam重写您的ToString()方法,调试器显示的工具提示窗口使用此方法显示与对象相关的任何数据。重写您的ToString()方

我有一组C#类,扩展了一个抽象类。父级上有一个抽象方法
void Show()
。扩展类是具有圈的图的一部分。Show的实现多次调用Console.Write()。在控制台写入之间有递归调用和其他调用


我的问题是,如果没有查看图形状态的简单方法,调试非常困难。我已经尝试过使该方法
string Show()
,但是很难正确处理所有的递归和循环。你能建议一个更好的方法吗


谢谢,Sam重写您的ToString()方法,调试器显示的工具提示窗口使用此方法显示与对象相关的任何数据。

重写您的ToString()方法,调试器显示的工具提示窗口使用此方法显示与对象相关的任何相关数据。

请考虑使用DebuggerDisplay而不是ToString。看看这些优秀的文章:


考虑使用DebuggerDisplay而不是ToString。看看这些优秀的文章:


这些显示方法是30-50行,还有一些时髦的缩进。我不想重写它们。你不需要重写它们,只要让它们在控制台上返回显示的文本,然后通过ToString()方法返回即可。“我已经尝试过让该方法
string Show()
,但很难正确处理所有递归和循环。”这个技巧可能会有所帮助,制作一个私有字符串缓冲区,当调用show方法时,清除它,当控制台上显示新行时,将其附加到缓冲区中,在ToString()方法中,返回该缓冲区。那些show方法有30-50行,有一些奇怪的缩进。我不想重写它们。你不需要重写它们,只要让它们在控制台上返回显示的文本,然后通过ToString()方法返回即可。“我已经尝试过让该方法
string Show()
,但很难正确处理所有递归和循环。”这个技巧可能会有所帮助,制作一个私有字符串缓冲区,调用show方法时,将其清除;在控制台上显示新行时,将其附加到缓冲区;在ToString()方法中,返回该缓冲区。