Excluir arquivo de StyleCop análise:"auto-gerados" tag é ignorada
-
14-11-2019 - |
Pergunta
No início de um arquivo em C#, eu adicionei:
//-----------------------------------------------------------------------
// <copyright company="SomeCompany" file="MyFile.cs">
// Copyright © Some Company, 2011
// </copyright>
// <auto-generated />
//-----------------------------------------------------------------------
Eu quero StyleCop para ignorar a verificação de este arquivo, então eu usei o auto-generated
truque explicado na outras respostas.
No entanto, após a limpeza e reconstrução da minha solução, StyleCop mantém gerando avisos para este ficheiro.Por que isso acontece?Como ele pode ser corrigido?
Eu estou usando o Microsoft Visual Studio 2008 Professional Edition e o StyleCop v4.3.
Solução
@Frédéric - infelizmente, Analyze generated files
a opção é não de alguma forma ligado com a ignorar arquivos com <auto-generated />
etiqueta.
Os arquivos que contém <auto-generated />
o texto será sempre ignorada, independentemente do valor do ajuste.
@Daniel - eu acredito que você lidar com um bug na versão 4.3, que foi lançado há mais de um ano atrás, e é definitivamente obsoleto agora.A única razão para usar 4.3 é somente se você usar o Visual Studio 2005, o que não é suportado pelo StyleCop 4.4.
Eu recomendo fortemente que você atualizar para 4.4 - acabei de verificado o seu exemplo e ele funciona muito bem.
Outras dicas
Você pode definir exclusões de arquivo dentro do Settings.StyleCop
arquivo.O arquivo está localizado em sua solução de projeto / ou em seu StyleCop diretório de instalação.
Em seguida, você pode usar regex dentro do Parser
definições para definir os arquivos que você deseja ignorar
<Parsers>
<Parser ParserId="Microsoft.StyleCop.CSharp.CsParser">
<ParserSettings>
<BooleanProperty Name="AnalyzeDesignerFiles">False</BooleanProperty>
<CollectionProperty Name="GeneratedFileFilters">
<Value>\.g\.cs$</Value>
<Value>\.generated\.cs$</Value>
<Value>\.g\.i\.cs$</Value>
<Value>codegen.*\.cs$</Value>
</CollectionProperty>
</ParserSettings>
</Parser>
</Parsers>
Neste caso eu queira ignorar codegen.whatever.cs
Seleção StyleCop documentação.O meu favorito é <auto-generated />
tag na parte superior do documento, ou você pode usar a diretiva #region ou outras opções mencionadas no docs.