我正在使用StyleCop,并且想抑制一些不适合我的风格的警告。我更喜欢有解决方案
1)行内代码抑制
2)全局设置抑制
我已经搜索了互联网,但still not sure如何做抑制。
对于方法1),他们说要添加以下行:
命名空间程序集: SuppressMessage("Microsoft.Design",“SA1202:所有私有方法必须放在所有公共方法之后”,Scope = "namespace",SuppressMessage= "Consus.Client.ClientVaultModule.Services.OnlineDetection")
但它们没有说明在何处以及使用哪个名称空间。
对于方法2),他们说要使用GlobalSuppress文件,但目前似乎不容易搜索如何做到这一点。
请帮帮忙。
在我的例子中编辑,我有关于SA1202的警告:所有私有方法必须放在所有公共方法之后,这很麻烦,因为我将我的相关代码分组到区域中。我只想对某些特定的方法取消这些警告。
发布于 2010-07-21 11:41:38
这是你需要的:
[SuppressMessage("Microsoft.StyleCop.CSharp.OrderingRules", "SA1202:ElementsMustBeOrderedByAccess")]
发布于 2010-07-20 15:05:52
内联取消的一个示例与此类似-检查代码中的名称空间与取消进行比较
namespace Soapi
{
///<summary>
///</summary>
///<param name = "message"></param>
///<param name = "statusCode"></param>
///<param name = "innerException"></param>
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Globalization", "CA1305:SpecifyIFormatProvider", MessageId = "System.String.Format(System.String,System.Object,System.Object)")]
public ApiException(string message, ErrorCode statusCode, Exception innerException)
: base(String.Format("{0}\r\nStatusCode:{1}", message, statusCode), innerException)
{
this.statusCode = statusCode;
}
全局抑制文件是名为GlobalSuppressions.cs
的项目根目录中的文件,可能如下所示:
// This file is used by Code Analysis to maintain SuppressMessage
// attributes that are applied to this project.
// Project-level suppressions either have no target or are given
// a specific target and scoped to a namespace, type, member, etc.
//
// To add a suppression to this file, right-click the message in the
// Error List, point to "Suppress Message(s)", and click
// "In Project Suppression File".
// You do not need to add suppressions to this file manually.
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Globalization", "CA1305:SpecifyIFormatProvider", MessageId = "System.String.Format(System.String,System.Object,System.Object,System.Object)", Scope = "member", Target = "Soapi.ApiException.#.ctor(System.String,Soapi.ErrorCode,System.String,System.Exception)")]
您可以通过右键单击警告来自动生成此代码。
发布于 2011-09-19 20:38:56
从StyleCop 4.3.2开始,可以通过在源代码中添加禁止属性来禁止报告违反规则的行为。
规则抑制http://stylecop.soyuz5.com/Suppressions.html
但上面写着-
全局抑制
StyleCop不支持全局禁止或文件级禁止的概念。必须在代码元素上放置取消标记。
https://stackoverflow.com/questions/3287656
复制相似问题