Why does Code Analysis not warn about NotImplement

2019-06-19 01:27发布

I'm pretty sure that previous versions of Visual Studio Code Analysis warned about the use of NotImplementedException, i.e. any member that contained this

throw new NotImplementedException();

would give a CA warning.

This doesn't seem to be the case with Visual Studio 2008.

Was that particular rule removed, or am I just imagining that it ever existed?

4条回答
贪生不怕死
2楼-- · 2019-06-19 02:10

I don't recall ever seeing such a rule in the Microsoft-shipped rule set. It's one of the first custom rules I've created at the day job since at least the days of FxCop 1.35, so I'd have to guess that it harkens back to the days of FxCop 1.32 if it did ever exist...

查看更多
Viruses.
3楼-- · 2019-06-19 02:14

You are probably thinking about this FxCop warning that you get when throwing NotImplementedException from special methods such as a property getter, event accessor, Equals, GetHashCode, Dispose etcetera:

CA1065 : Microsoft.Design : 'SomeClass.SomeProperty.get()' creates an exception of type 'NotImplementedException', an exception type that should not be raised in a property. If this exception instance might be raised, use a different exception type, convert this property into a method, or change this property's logic so that it no longer raises an exception.

However, it is not explicitly related to NotImplementedException. FxCop has white lists for the exceptions that may be (directly) thrown by these methods.

查看更多
手持菜刀,她持情操
4楼-- · 2019-06-19 02:17

Unfortunately, there isn't such a rule in the standard ruleset.

You can find my implementation of it in one of my other answers.

查看更多
Juvenile、少年°
5楼-- · 2019-06-19 02:28

I know this is an old question, but I'm getting this as a warning (12 Sep 2017), when running Code Analysis, using Visual Studio 2017. It is the "CA1065" code that Wim Coenen mentions, so it seems Microsoft must have ported FxCop rules to the Roslyn-based analysis platform.

Link provided in Error List window

查看更多
登录 后发表回答