Visual studio 为什么代码分析没有警告NotImplementedException?

Visual studio 为什么代码分析没有警告NotImplementedException?,visual-studio,code-analysis,notimplementedexception,Visual Studio,Code Analysis,Notimplementedexception,我敢肯定,Visual Studio代码分析的早期版本警告过使用NotImplementedException,即任何包含此项的成员 throw new NotImplementedException(); 将发出CA警告 VisualStudio2008似乎并非如此 该特定规则是否已删除,或者我只是想象它曾经存在过?我不记得在Microsoft发布的规则集中见过这样的规则。这是至少在FxCop 1.35时代以来我在日常工作中创建的第一个自定义规则之一,因此我不得不猜测,如果FxCop 1.3

我敢肯定,Visual Studio代码分析的早期版本警告过使用NotImplementedException,即任何包含此项的成员

throw new NotImplementedException();
将发出CA警告

VisualStudio2008似乎并非如此


该特定规则是否已删除,或者我只是想象它曾经存在过?

我不记得在Microsoft发布的规则集中见过这样的规则。这是至少在FxCop 1.35时代以来我在日常工作中创建的第一个自定义规则之一,因此我不得不猜测,如果FxCop 1.32确实存在的话,它可以追溯到FxCop 1.32的时代…

您可能在想,当从特殊方法(如属性获取程序)抛出
NotImplementedException
时,事件访问器、Equals、GetHashCode、Dispose等:

CA1065:Microsoft。设计: 'SomeClass.SomeProperty.get()' 创建类型为的异常 “NotImplementedException”,一个 不应为的异常类型 在地产中长大。如果这 可能会引发异常实例, 使用不同的异常类型, 将此属性转换为方法, 或者将此属性的逻辑更改为 它不再引起争议 例外


但是,它与
NotImplementedException
没有明确的关系。FxCop为这些方法可能(直接)引发的异常提供了白名单。

不幸的是,标准规则集中没有这样的规则


您可以在中找到我的实现。

我知道这是一个老问题,但在使用Visual Studio 2017运行代码分析时,我得到了一个警告(2017年9月12日)。Wim Coenen提到的是“CA1065”代码,因此微软似乎已经将FxCop规则移植到了基于Roslyn的分析平台上


VS 2005没有警告,也没有相关的google搜索结果显示“如何修复违规行为”未实现异常-我不认为这是或是默认规则集的一部分。可能是在FxCop中,但在VS中从未出现过。我开始认为我的记忆在捉弄我,但如果不是,我肯定很久没看到它了。