Сборка Gated Checkin игнорирует [SuppressMessage] в исходном коде - PullRequest
1 голос
/ 02 февраля 2012

Мы хотим отказаться от проверок, которые нарушают наши пользовательские правила статического кода.Поэтому мы определили сборку Gated Checkin, в которой для «Выполнить анализ кода» задано значение «AsConfigured».

Когда я собираю решение локально, используя ту же конфигурацию и цель, которые определены для сборки Gated Check в сборке, появляетсянет ошибок.Но сборка Gated Checkin, похоже, игнорирует любые атрибуты [SuppressMessage], которые мы определили в источнике, и, следовательно, сообщает об ошибках.

Сборка Gated checkin не игнорирует атрибуты [SuppressMessage], определенные в файле GlobalSuppressions.

Кто-нибудь еще имеет эту проблему?

1 Ответ

3 голосов
/ 02 февраля 2012

Когда вы сказали, что у вас локальная сборка, вы строили из Visual Studio или из MSBuild?

TFS Build использует MSBuild для сборки проектов, и вы сможете увидеть, какая команда MSBuild выполняется во время сборки, посмотрев журнал из отчета о сборке (если вы установили уровень детализации хотя бы на Normal).

Чтобы исследовать эту проблему, я бы порекомендовал вам использовать эту команду MSBuild для локального построения решения (вам потребуется изменить путь к решению на вашем компьютере, а не путь, используемый на компьютере сборки), и он будет скорее всего, вы получите те же ошибки, которые указывают на несоответствие между сборкой в ​​MSBuild и сборкой в ​​Visual Studio. Затем мы можем посмотреть на команду MSBuild и понять, почему она не ведет себя так же.

Надеюсь, это поможет.

...