当您使用Visual Studio的代码分析(FxCop),并且想要抑制消息时,有3个选项.
在签入源代码管理时很难检查后者,并且很难概述所有禁用的违规行为.所以我们想使用选项2.
选项1和2的问题是每次违规都会得到一条抑制线.例如:
[assembly: SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "Company.Project.Namespace2")]
[assembly: SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "Company.Project.Namespace1")]
Run Code Online (Sandbox Code Playgroud)
我们很乐意在GlobalSuppressions.cs上做这样的事情:
[assembly: SuppressMessage("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes")]
Run Code Online (Sandbox Code Playgroud)
但这可能吗?
可能重复:
如何抑制StyleCop警告?
目前我正在为我们的项目设置StyleCop,我偶然发现了一个StyleCop规则.这是关于SA1300命名规则:
SA1300:名称空间名称以大写字母开头:iCompanyName.
所以我的公司以小写字母开头.各种产品名称也有.因此,是否有可能在Settings.StyleCop文件中添加此规则的例外?
我想阻止使用C#编写自定义StyleCop规则.
提前感谢您的回复.
编辑: 我意识到我应该注意到我实际上并不想完全禁用/禁止StyleCop规则.我只想对这个命名规则做一些例外.
我有一个方法来处理大量的文件类型:
case ".jpg":
res = "image/jpeg";
break;
case ".pdf":
res = "application/pdf";
break;
case ".doc":
res = "application/msword";
break;
Run Code Online (Sandbox Code Playgroud)
..这持续了几百行.我遇到了StyleCop错误:SP2101: Method body must not contain more than 120 code lines
我四处搜寻,找不到任何东西,更不用说压制了.有谁知道如何压制这条消息?
编辑:我认为这是一个StyleCop+错误,使用FxCop程序复制抑制无法解决.
如何抑制Style Cop规则SP0100?
枚举项名称v2007不符合指定的样式:SampleName,Sample_Name.
我尝试了以下/sf/answers/230730671/
[SuppressMessage("SP0100")]
Run Code Online (Sandbox Code Playgroud)
但是我收到了一个错误
'System.Diagnostics.CodeAnalysis.SuppressMessageAttribute'不包含带有1个参数的构造函数