Проблема
Слушайте, как же это раздражает, когда стоишь в отладчике на строке вроде этой:
ReportDefects(processor.Trash);
Хочешь зайти в ReportDefects, жмешь «step into» и попадаешь сначала в абсолютно тупое
public ICollection<Defect> Trash { get { return trash; } }
Первый подход к снаряду
Есть такая штука, называется DebuggerStepThroughAttribute:
"… отладчик Visual Studio 2005 не останавливается на методе, помеченном с помощью этого атрибута, но позволяет задавать точки прерывания в данном методе."
Казалось бы, то что надо — ан нетЪ! Этот аттрибут нельзя применять к свойствам.
Решение
Как оказалось, аттрибуты — как и модификаторы — можно применять по-отдельности к геттеру и к сеттеру. В принципе логично, но не очевидно. Итак, брюки превращаются в элегантные шорты:
public ICollection<Defect> Trash { [DebuggerStepThrough] get { return trash; } }
Дискламация
Без претензий на оригинальность, просто в порядке обмена опытом.
Почерпнул отсюда.