3

Я только что начал использовать Visual Studio 2015 и обнаружил, что он ведет себя по-разному с VS2012/VS2013 при отладке автоматически реализованных свойств.В VS2015, как отключить Step Into для автоматически реализованных свойств?

Скажем, у меня есть свойство, определенное в классе:

public int MyProperty { get; set; } 

т.е.. автоматически реализованное свойство, при котором получатель и сеттер эффективно генерируются компилятором.

Я могу сослаться на эту собственность позже, как часть вызова метода, например:

{ 
    DoSomeStuff(MyProperty); 
} 

Если я хочу, чтобы отладить вызов DoSomeStuff и поставить точку останова на этой линии, а затем ждать его чтобы попасть в F11 и перейти к вызову. В отладчик VS2015 теперь входит в getter для MyProperty (в предыдущих версиях для автоматически реализованных свойств он просто игнорировал бы геттеры и сеттеры).

Я нашел blog post, который описывает возможность установки точек останова на автогрейдеры & сеттеров в качестве новой функции, и я могу видеть, как это может быть полезно в некоторых случаях. Однако в моем случае я не заинтересован в том, чтобы перехватывать или вступать в эти методы, в частности, поскольку наша база кода имеет много автоматически реализованных свойств, и доступ к ним часто вложен (например, DoSomeStuff(X.Y.Z)).

Короче говоря, можно ли отключить новое поведение Step Into для автоматически реализованных свойств в VS2015, и если да, то как?

(я заметил «Шаг за свойства и операторов» флажок в опции отладки, но я не хочу, чтобы перешагнуть все собственности геттеров/сеттер, только те, для авто Реализуемых свойств.)

+0

Как правило, лучше всего «переходить по свойствам» почти всегда и только наступать, когда вам действительно нужно отлаживать конкретный код свойства. В контекстном меню есть много вариантов, связанных с степпингом. – Phil1970

ответ

3

Go к параметрам VS2015 -> отладка -> общий и отметьте «Перейдите по свойствам и операторам».

+0

Я отредактировал свой ответ, чтобы рассказать вам, как изменить общее поведение. – Kinetic

+1

Я отметил это как ответ, хотя это немного ядерный: предотвращает переход не только для автоматически реализованных свойств, но и для свойств * all *. Очень раздражает то, что нет способа предотвратить одно, а не другое, особенно, поскольку это изменение в поведении из более ранних версий VS. –

 Смежные вопросы

  • Нет связанных вопросов^_^