StyleCop SA1638 - PullRequest
       22

StyleCop SA1638

7 голосов
/ 04 марта 2010

Я использую StyleCop в VS2008.Я получаю эту ошибку:

SA1638: атрибут файла в теге авторского права заголовка файла должен содержать имя файла.

Вот мой заголовок.

// <copyright file="AssemblyInfo.cs" company="company">
// Copyright (c) company. All rights reserved.
// </copyright>
// <author>me</author>
// <email>me@me.com</email>
// <date>2010-03-04</date>
// <summary>blah blah.</summary>

Я подозреваю, что проблема в том, что мой AssemblyInfo.cs находится внутри папки Properties.Любые подсказки, как я могу исправить это предупреждение, не отключая StyleCop?

Ответы [ 6 ]

5 голосов
/ 04 марта 2010

Выберите файл в обозревателе решений, откройте правой кнопкой мыши окно «Свойства», скопируйте текст в область «Имя файла» и вставьте его в заголовок.

Каталог свойств не должен иметь значения, я предполагаю, что у вас там есть опечатка.

Дополнительно:
Если это не сработает, то, чтобы исправить это, вам придется поднять его на следующий уровень.
Скопируйте весь проект в новое решение, повторно отсканируйте с помощью StyleCop.
Удалите все несвязанные файлы, повторите сканирование с помощью StyleCop.
Удалите весь код в файле проблемы, кроме заголовка, повторите сканирование с помощью StyleCop.
Если проблема исчезнет где-нибудь по пути, это будет действительно странно.
Если проблема не исчезнет, ​​значит, у вас есть воспроизводимый образец!

Заархивируйте этот образец и прикрепите его к новому рабочему элементу здесь: http://code.msdn.microsoft.com/sourceanalysis/WorkItem/List.aspx

По прошествии некоторого времени, скорее всего, выйдет новый релиз для исправления ошибки. 8)

3 голосов
/ 04 марта 2010

У меня есть следующее для файла AssemblyInfo.cs в папке Properties:

// <copyright file="AssemblyInfo.cs" company="company">
// product
// Copyright (c) 2004-2010
// by company ( http://www.example.com )
// </copyright>

И с этим проблем не возникает. Вы уверены, что имя файла правильное (возможно, регистр выключен?) И что у вас нет недопустимого XML (возможно, амперсанда в названии вашей компании)?

2 голосов
/ 25 августа 2015

В соответствии с документацией StyleCop, вот как вы будете обрабатывать AssemblyInfo.cs в настоящее время:

Файл, который автоматически генерируется инструментом и который не должен проверяться или применяться StyleCop, может содержать «автоматически генерируемый» заголовок, а не стандартный заголовок файла. Это заставит StyleCop игнорировать файл. Этот тип заголовка никогда не должен быть помещен поверх написанного вручную файла кода.

// <auto-generated />
namespace Sample.Something
{
    // The contents of this file are completely auto-generated by a tool.
}
0 голосов
/ 07 мая 2018

Имя файла и класс должны быть одинаковыми.

пожалуйста, используйте это после документации заголовка файла. Это исправит проблемы.

[module: System.Diagnostics.CodeAnalysis.SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1649:FileHeaderFileNameDocumentationMustMatchTypeName", Justification = "Reviewed.")]
0 голосов
/ 03 июля 2015

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

0 голосов
/ 28 декабря 2012

Причина в том, что имя файла отличается от имени класса внутри этого файла. Если имя файла и имя класса совпадают, это решит проблему.

...