Вчера я читал об атрибуте DebuggerBrowsable, и он звучал замечательно, однако, когда я пытался заставить его работать в тесте, это, похоже, не имело никакого значения. Я использую VS 2008 версии 9.0.30729 1 SP, .Net 3.5 SP1, MSTest Framework
[TestClass]
public class TestingDebuggerBrowsable
{
[TestMethod]
public void JustToDemonstrateDebugging()
{
var foo = new MyExposedClass();
foo.ToString(); // I put a breakpoint here, and debugged the test
}
}
public class MyExposedClass
{
public MyExposedClass()
{
ShouldBeSeeingThisInMyDebugger = new List<string> {"foo", "bar"};
}
[DebuggerBrowsable(DebuggerBrowsableState.RootHidden)]
public IList<string> ShouldBeSeeingThisInMyDebugger { get; set; }
}
Когда я наводю курсор на foo, я получаю обычное представление List, где мне нужно детализировать несколько уровней, чтобы добраться до элементов, ничем не отличающихся от того, что я пропустил атрибут.
Я надеялся просто навести указатель мыши на свойство ShouldBeSeeingThisInMyDebugger и увидеть элементы коллекции.
EDIT:
Кажется, что это работает на машине Йероена, но не моей, несмотря на использование той же IDE и фреймворка. Мне было бы интересно услышать, если у кого-то есть такая же проблема, как у меня.