Я создал пакет NuGet и во время его тестирования обнаружил, что всякий раз, когда переход к методу в пакете Visual Studio показывает код, я бы хотел, чтобы этого не было.

Пакет был собран в конфигурации Release .

Что нужно для того, чтобы отключить пошаговый код классов пакета?

0
aybe 28 Апр 2014 в 18:19

2 ответа

Лучший ответ

Вы публикуете файлы PDB в своем пакете NuGet? Если это так, Visual Studio выполняет ожидаемое поведение, позволяя вам вмешаться.

Если вы определенно хотите включить PDB, вам нужно добавить атрибут [DebuggerStepThrough] к каждому классу в вашей сборке. Однако это сделает отладку для вас кошмаром, если только вы не используете условие hash-define #if BLAH, чтобы делать это только в режиме Release.

Я предлагаю не включать PDB в ваш пакет NuGet, тогда вам вообще не нужно изменять код.

4
Martin Costello 28 Апр 2014 в 14:23

Используйте DebuggerHidden атрибут в ваших классах. Атрибуты DebuggerNonUserCode и DebuggerStepThrough также будут работать.

1
i3arnon 28 Апр 2014 в 14:21