Предполагая, что новый класс предоставляет свойство Count
, вы можете добавить DebuggerDisplayAttribute
к классу для отображения свойства при отладке
[DebuggerDisplay("Count = {Count}")]
public class BetterList: List<SomeType> {
//...
public int Count { get; }
}
Для более сложных сценариев отображенияreview Использование атрибута DebuggerTypeProxy
DebuggerTypeProxyAttribute
указывает прокси или замену для типа и изменяет способ отображения типа в отладчикеокна.Когда вы просматриваете переменную с прокси, прокси заменяет исходный тип на дисплее.В окне переменных отладчика отображаются только открытые члены типа прокси.Личные участники не отображаются.
[DebuggerDisplay("Count = {Count}")]
[DebuggerTypeProxy(typeof(BetterListDebuggerView))]
public class BetterList: List<SomeType> {
//...
public int Count { get; }
internal class BetterListDebuggerView {
private BetterList list;
public BetterListDebuggerView(BetterList list) {
this.list = list;
}
[DebuggerBrowsable(DebuggerBrowsableState.RootHidden)]
public SomeType[] Items {
get {
return list.ToArray();
}
}
}
}