Visual studio 为什么代码分析没有警告NotImplementedException?
我敢肯定,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
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中从未出现过。我开始认为我的记忆在捉弄我,但如果不是,我肯定很久没看到它了。