Pull to refresh

Дебагер прошел навылет: DebuggerStepThrough

Reading time1 min
Views788
Проблема

Слушайте, как же это раздражает, когда стоишь в отладчике на строке вроде этой:
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; }
}

Дискламация

Без претензий на оригинальность, просто в порядке обмена опытом.
Почерпнул отсюда.
Tags:
Hubs:
Total votes 15: ↑12 and ↓3+9
Comments2

Articles