首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何抑制StyleCop警告?

如何抑制StyleCop警告?
EN

Stack Overflow用户
提问于 2010-07-20 14:53:09
回答 12查看 57.8K关注 0票数 60

我正在使用StyleCop,并且想抑制一些不适合我的风格的警告。我更喜欢有解决方案

1)行内代码抑制

2)全局设置抑制

我已经搜索了互联网,但still not sure如何做抑制。

对于方法1),他们说要添加以下行:

命名空间程序集: SuppressMessage("Microsoft.Design",“SA1202:所有私有方法必须放在所有公共方法之后”,Scope = "namespace",SuppressMessage= "Consus.Client.ClientVaultModule.Services.OnlineDetection")

但它们没有说明在何处以及使用哪个名称空间。

对于方法2),他们说要使用GlobalSuppress文件,但目前似乎不容易搜索如何做到这一点。

请帮帮忙。

在我的例子中编辑,我有关于SA1202的警告:所有私有方法必须放在所有公共方法之后,这很麻烦,因为我将我的相关代码分组到区域中。我只想对某些特定的方法取消这些警告。

EN

回答 12

Stack Overflow用户

发布于 2010-07-21 11:41:38

这是你需要的:

代码语言:javascript
复制
[SuppressMessage("Microsoft.StyleCop.CSharp.OrderingRules", "SA1202:ElementsMustBeOrderedByAccess")]
票数 49
EN

Stack Overflow用户

发布于 2010-07-20 15:05:52

内联取消的一个示例与此类似-检查代码中的名称空间与取消进行比较

代码语言:javascript
复制
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的项目根目录中的文件,可能如下所示:

代码语言:javascript
复制
// 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)")]

您可以通过右键单击警告来自动生成此代码。

票数 21
EN

Stack Overflow用户

发布于 2011-09-19 20:38:56

从StyleCop 4.3.2开始,可以通过在源代码中添加禁止属性来禁止报告违反规则的行为。

规则抑制http://stylecop.soyuz5.com/Suppressions.html

但上面写着-

全局抑制

StyleCop不支持全局禁止或文件级禁止的概念。必须在代码元素上放置取消标记。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3287656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档