Почему Анализ кода не предупреждает о NotImplementedException?

Я вполне уверен, который предыдущие версии Анализа кода Visual Studio предупредили об использовании NotImplementedException, т.е. любом участнике, который содержал это

throw new NotImplementedException();

дал бы предупреждение CA.

Это, кажется, не имеет место с Visual Studio 2008.

То конкретное правило было удалено, или я просто предполагаю, что оно когда-нибудь существовало?

6
задан Mark Seemann 25 February 2010 в 09:50
поделиться

2 ответа

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

1
ответ дан 17 December 2019 в 02:27
поделиться

Вы, вероятно, думаете об предупреждении FxCop , которое вы получаете при выбросе NotImplementedException из специальных методов, таких как средство получения свойства, средство доступа к событию, Equals, GetHashCode, Dispose и т.д.:

CA1065: Microsoft.Design: 'SomeClass.SomeProperty.get ()' создает исключение типа {{1} } NotImplementedException, тип исключения , который не должен возникать в свойстве. Если этот экземпляр исключения может быть вызван, используйте другой тип исключения, преобразуйте это свойство в метод или измените логику этого свойства, чтобы {{1} }} что он больше не вызывает исключение .

Однако это не связано явно с NotImplementedException . У FxCop есть белые списки исключений, которые могут быть (напрямую) вызваны этими методами.

4
ответ дан 17 December 2019 в 02:27
поделиться
Другие вопросы по тегам:

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