Ну, я только что проверил это, и он работает с моей простой программой. Я также думал, что у меня есть возможное объяснение, но тестирование показывает, что это не то, что я думал (информация ниже кода).
Во-первых, вот код, который работает:
using System;
using System.Diagnostics;
using System.Collections.Generic;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Program p = new Program();
Console.Out.WriteLine(p.Name); // breakpoint here
}
private String _Name = String.Empty;
[DebuggerDisplay("Name: {_Name}")]
public String Name
{
get { return _Name; }
set { _Name = value; }
}
private IList<String> _Names = new List<String>();
[DebuggerDisplay("Names: {_Names.Count}")]
public IList<String> Names
{
get { return _Names; }
set { _Names = value; }
}
}
}
Я думал, что класс коллекции, который вы извлекаете из метода FetchChildrenFromDB, имеет свой собственный атрибут DebuggerDisplay, который имеет приоритет. Но это не так. Я реализовал фиктивный класс IList с прикрепленным к нему атрибутом, а тот, который присоединен к свойству, все еще имеет приоритет.