【问题标题】:How to setup StyleCop for Asp.net Core 1.1 solution?如何为 Asp.net Core 1.1 解决方案设置 StyleCop?
【发布时间】:2017-12-09 21:06:59
【问题描述】:

我正在开发包含大量项目(Web、控制台和类库)的 asp.net 核心项目,我想为此设置 stylecop。

我尝试安装“StyleCopAnalyzers”nuget,它似乎可以正常工作(出现 stylecop 违规错误)。

对于整个解决方案级别,我想忽略一些 stylecop 规则(例如 SA1652)。

需要帮助设置 stylecop 以获得具有最佳实践的完整解决方案。

提前致谢

【问题讨论】:

    标签: asp.net-core asp.net-core-mvc .net-core stylecop


    【解决方案1】:

    您可以通过禁止文件禁止不需要的策略。在解决方案根文件夹中创建此文件并将其 (Add as Link) 链接到您的每个项目。

    示例文件内容:

    using System.Diagnostics.CodeAnalysis;
    
    [assembly: SuppressMessage("StyleCop.CSharp.ReadabilityRules", "SA1101:Prefix local calls with this")]
    [assembly: SuppressMessage("StyleCop.CSharp.ReadabilityRules", "SA1124:Do not use regions")]
    

    【讨论】:

    • 我尝试了上述方法,但无法解决所有 stylecop 问题,例如 SA1005 抑制在项目级别不起作用( [assembly: SuppressMessage("StyleCop.CSharp.SpacingRules", "SA1005:Single line cmets must begin单个空格”,Justification = “Pending”,Scope = “member”,Target = “~M:ConsoleApp2.Program.Main(System.String[])”)])。有了目标,它只能工作类,但没有目标它不再工作了。
    • 检查bitbucket.org/just_dmitry/parsec.vedom (VS2017)。如果我将[assembly: SuppressMessage("StyleCop.CSharp.SpacingRules", "SA1005:Single line comments must begin with single space")] 添加到GlobalSuppression.cs 它适用于项目中的类(例如Startup.cs)。 VS/Roslyn 大约需要几分钟来“捕捉”保存的更改(尝试重新加载解决方案以确保),但它可以工作。
    猜你喜欢
    • 2017-10-30
    • 2016-02-19
    • 2011-08-20
    • 1970-01-01
    • 2012-02-14
    • 2011-07-19
    • 1970-01-01
    • 2019-10-11
    • 1970-01-01
    相关资源
    最近更新 更多