是否可以将System.Diagnostics.DebuggerDisplay属性分配给Dictionary的定义?
e.g。
Dictionary<int, SomeClass>
[System.Diagnostics.DebuggerDisplay("{Info,nq}")]
public class SomeClass{
string code {get;set;}
public string Info { get { return "info" + code; }}
}
// place an attribute here??
[System.Diagnostics.DebuggerDisplay("{???,nq}")]
Dictionary<int, SomeClass> dict = new Dictionary<int, SomeClass>();
答案 0 :(得分:7)
编辑:另见this answer。
我还没有尝试过,但是从文档中可以在汇编级别应用此属性。所以从理论上讲,你可以这样做:
[assembly: DebuggerDisplay("{Key,nq}: {Value,nq}", Target = typeof(KeyValuePair<int, SomeClass>))]
如果它能让您轻松指定Target
这是一个开放的通用类型,例如,我会感到惊讶。 Target = typeof(KeyValuePair<,>)
适用于任何类型的KVP。但如果你需要,那值得一试!