Можно заставить Анализ кода понять Контракты Кода?

При использовании Контрактов Анализа кода и Кода в комбинации я получаю много предупреждений как

CA1062: Microsoft. Дизайн: Во внешне видимом методе 'Нечто. Панель (Журнал)', проверяют параметр 'журнал' перед использованием его.

В Нечто. Панель, у меня есть контракт, который проверяет log.

public Bar(Log log)
{
   Contract.Requires(log != null);
   log.Lines.Add(...);
   // ...
}

Существует ли способ заставить FxCop понять контракты кода?

21
задан ulrichb 2 December 2010 в 12:29
поделиться

1 ответ

Нет I не думаю, что это возможно в текущей сборке, поскольку код, сгенерированный переписчиком контрактов, не создает стандартный шаблон, который ищет FxCop.

Обычно я отключаю это конкретное правило FxCop при использовании контрактов кода. Я считаю, что статический верификатор более чем компенсирует потерю этого правила, поскольку он будет кричать об отсутствии проверки гораздо более агрессивно, чем FxCop. Я бы предложил здесь тот же подход, который решит эту проблему для вас.

14
ответ дан 29 November 2019 в 22:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: