zoukankan      html  css  js  c++  java
  • StyleCop

    1. Install StyleCop-4.7.49.0.msi
     
    2. Run StyleCop/Run StyleCop (Rescan All)
     
    3. Warnings
    CSharp.Ordering: All using directives must be placed inside of the namespace. > Can be turned off in the StyleCop Settings
     
    4. How do I integrate StyleCop 4.7 with Visual Studio MSBuild?
     
    The above command will download the latest stable required dlls and files and integrate style cop with your project. Build your project and any stylecop errors will be shown in the warnings section.
     
    If you want your build to succeed only if all stylecop errors are fixed, you will need to make some changes to the project file to set a boolean to not treat stylecop errors as warnings.
    Open the .csproj file for your project in notepad, and find the first PropertyGroup section within the file. Add a new tag to set the StyleCopTreatErrorsAsWarnings flag to false.

    For example:

     
    <StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings> is shown above.
     
    Issues:
    1. C# - StyleCop - SA1121: UseBuiltInTypeAlias - Readability Rules

    The code uses one of the basic C# types, but does not use the built-in alias for the type.

    Rather than using the type name or the fully-qualified type name, the built-in aliases for these types should always be used: bool, byte, char, decimal, double, short, int, long, object, sbyte, float, string, ushort, uint, ulong.

    so String.Empty is wrong (depend on above rules) and string.Empty is good.

    I do not agree :)

    <Rule Name="UseBuiltInTypeAlias">
        <RuleSettings>
            <BooleanProperty Name="Enabled">False</BooleanProperty>
        </RuleSettings>
    </Rule>

    2. How to exclude private members from StyleCop rule SA1600

    I am not very interesting with write documents for private members :)

    <AnalyzerSettings>
        <BooleanProperty Name="IncludeFields">False</BooleanProperty>
    </AnalyzerSettings>

    3. A field name in C# must not begins with an underscore.

    I do not agree :)

    <Rule Name="FieldNamesMustNotBeginWithUnderscore">
        <RuleSettings>
            <BooleanProperty Name="Enabled">False</BooleanProperty>
        </RuleSettings>
    </Rule>

    4. By default, StyleCop does not allow variable or field names to include Hungarian notation

    How can I allow nh (NHibernate)

    <Analyzers>
        <Analyzer AnalyzerId="Microsoft.StyleCop.CSharp.NamingRules">
            <AnalyzerSettings>
                <CollectionProperty Name="Hungarian">
                    <Value>nh</Value>
                </CollectionProperty>
            </AnalyzerSettings>
        </Analyzer>
    </Analyzers>

    5. The comment must start with a single space. To ignore this error when commenting out a line of code, begin the comment with '////' rather than '//'

    <Analyzer AnalyzerId="Microsoft.StyleCop.CSharp.SpacingRules">
        <Rules>
            <Rule Name="SingleLineCommentsMustBeginWithSingleSpace">
                <RuleSettings>
                    <BooleanProperty Name="Enabled">False</BooleanProperty>
                </RuleSettings>
            </Rule>
        </Rules>
    </Analyzer>

    6. The comment is empty. Add text to the comment or remove it.

    <Analyzer AnalyzerId="StyleCop.CSharp.ReadabilityRules">
        <Rules>
            <Rule Name="CommentsMustContainText">
                <RuleSettings>
                    <BooleanProperty Name="Enabled">False</BooleanProperty>
                </RuleSettings>
            </Rule>
        </Rules>
        <AnalyzerSettings />
    </Analyzer>

    7. More rules you can found in the below url:

    http://www.stylecop.com/docs/StyleCop%20Rules.html

  • 相关阅读:
    IOS7笔记-10、多线程、滚动视图
    IOS7笔记-8、协议、block、动画
    IOS7笔记- 7、视图、绘制、手势识别
    IOS7笔记-6、控制器多态性、导航控制器、选项卡栏控制器
    IOS7笔记-5、视图控制器生命周期
    C# DevExpress之GridView同步滚动条记录方法
    C# 隐藏TabControl标签
    VC++ 如何识别系统语言类别
    我的免费空间网站
    慕课网-Java入门第一季-7-5 Java 中带参无返回值方法的使用
  • 原文地址:https://www.cnblogs.com/zhangpengc/p/4940060.html
Copyright © 2011-2022 走看看