自动枚举结果视图

时间:2014-02-14 21:43:06

标签: c# debugging collections

所以,我刚刚发现了很棒的DebuggerDisplay属性,并且已经开始在我的代码中使用它了。不过,我注意到了一些非常古怪的东西,或者问题实际上是KeyedCollection。

如果没有DebuggerDisplay属性,我会将“Count = x”作为KeyedCollection的主要显示,并展开以显示集合的元素。但是,添加属性后,我会按预期获得自定义文本,但现在它会展开以显示我已添加到对象本身的各种值和属性。这很棒,对我来说比集合更有意义 - >默认情况下显示的Raw View样式。但是,现在,默认情况下不会填充结果视图,而是按照惯例“扩展结果视图将枚举IEnumerable”。

如何摆脱这种行为?我知道结果是可以安全枚举的,并且希望它们能够自动枚举。对于奖励积分,我可以自动扩展选择吗?

1 个答案:

答案 0 :(得分:0)

正如我在评论中所说,使用DebuggerTypeProxyAttribute,你最接近你想要的是什么。不幸的是,它是一种密封型,因此您可能无法轻松重复使用。