CA1062: ValidateArgumentsOfPublicMethods на co-вызовах-конструктора

Первоначально я добавил это в качестве комментария, но я хотел добавить скриншот, так как по крайней мере один человек не мог найти эту опцию (или, возможно, она не была доступна в их конкретной версии по какой-то причине).

В Chrome 68.0.3440.106 (и теперь проверено в 72.0.3626.121) мне пришлось

  • открыть инструменты разработчика (F12)
  • щелкнуть меню из трех точек в верхней части. щелкните правой кнопкой
  • , щелкните настройки
  • ,
  • выберите «Настройки» в левом меню.
  • отметьте метки времени в разделе «Консоль» на экране настроек

. Settings > Preferences > Console > Show timestamps

8
задан SLaks 29 June 2009 в 18:08
поделиться

3 ответа

Как это?

public MyClass(SomeOtherClass source) : this(source, source == null ? null : source.Name) { }
public MyClass(SomeOtherClass source, string name) { /* ... */ }
10
ответ дан 5 December 2019 в 13:01
поделиться

Есть допустимые моменты для отключения предупреждений FxCop, и это вполне может быть одно из них, но вы можете исправить проблему с помощью тернарного выражения, которое проверяет значение null и генерирует исключение (или заменяет значение по умолчанию) или вызов статического метода, который проверяет наличие null и генерирует соответствующее исключение.

1
ответ дан 5 December 2019 в 13:01
поделиться

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

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

0
ответ дан 5 December 2019 в 13:01
поделиться
Другие вопросы по тегам:

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