Проблема с файлом Global.asax.cs и правилом StyleCop SA1649 - PullRequest
2 голосов
/ 17 октября 2011

В настоящее время я работаю над проектом на работе, и мы собираемся обновить наш StyleCop с версии 4.3.3 до 4.5

Во время всего этого мы столкнулись с правилом SA1649 -«FileHeaderFileNameDocumentationMustMatchTypeName», что все хорошо, но вызывает проблемы с файлами Global.asax.cs, в которых файл

// --------------------------------------------------------------------------------------------------------------------
// <copyright file="Global.asax.cs" company="COMPANY">
//   Copyright (c) COMPANY. All rights are reserved.....
// </copyright>
// <summary>
//   Starting point for back office website.
// </summary>
// --------------------------------------------------------------------------------------------------------------------

namespace Foo.Web
{
    /// <summary>
    /// Starting point for back office website.
    /// </summary>
    public class MvcApplication : HttpApplication
    {
        ....
    }
}

жалуется, потому что имя файла «Global.asax.cs» икласс 'MvcApplication' не совпадает.Мы пытались поместить подавляющий список для «Global.asax.cs» в настройках sylecop, но, похоже, это не сработало.(В настоящее время наша работа заключается в том, чтобы полностью отключить правило, но мы не хотим, чтобы это сохранялось в данном случае, нам нужно только исключение для файлов Global.asax.cs.)

Ответы [ 2 ]

3 голосов
/ 06 мая 2014

Использовать подавление уровня пространства имен:

[module: System.Diagnostics.CodeAnalysis.SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1649:FileHeaderFileNameDocumentationMustMatchTypeName", Justification = "Reviewed.")]

namespace MyNamespace
{

}
3 голосов
/ 30 октября 2011

Обнаружил это с небольшим количеством времени и манипуляциями с исходным файлом, сгенерированным инструментом.

<StyleCopSettings Version="105">
  <Analyzers>
  ... Removed for brevity ...
  </Analyzers>
  <SourceFileList>
        <SourceFile>Global.asax.cs</SourceFile>
        <Settings>
            <Analyzers>
                <Analyzer AnalyzerId="StyleCop.CSharp.DocumentationRules">
                    <Rules>
                        <Rule Name="FileHeaderFileNameDocumentationMustMatchTypeName">
                          <RuleSettings>
                            <BooleanProperty Name="Enabled">False</BooleanProperty>
                          </RuleSettings>
                        </Rule>
                    </Rules>
                </Analyzer>
            </Analyzers>
        </Settings>
    </SourceFileList>
</StyleCopSettings>

Надеюсь, это поможет кому-то еще с этой проблемой.

...