2010-01-22 11 views
5

¿Es posible suprimir las reglas de StyleCop de una forma más global que ... en otras palabras, no solo usar los atributos de fuente en línea?Supresión de StyleCop

Respuesta

8

Puede deshabilitar ciertas reglas stylecop con un archivo Settings.StyleCop. Por ejemplo, hay ciertas cosas incorporadas en stylecop que no se ajustan a nuestro estándar. Por ejemplo, en mi archivo Settings.StyleCop tenemos:

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

De tal manera que en una variable miembro o la propiedad no tiene que tener "este". para todos y cada uno

+0

Y estoy recibiendo una respuesta negativa ¿por qué? – McAden

+0

' False' debe ser el xml más tonto que he visto en mi vida. –

+0

' True' – McAden

2

¡Absolutamente!

Los atributos de origen solo deben usarse en las circunstancias más raras, la gran mayoría de su configuración de StyleCop debe hacerse a través del StyleCopSettingsEditor (haga clic derecho en un proyecto, elija "StyleCop Settings", que abrirá uno) .

Esto creará un archivo Settings.StyleCop para ese proyecto en el directorio del proyecto. Ese archivo puede ser editado a mano como la otra respuesta menciona, pero nunca sugeriría piratear XML en un editor. StyleCopSettingsEditor es definitivamente el camino a seguir.

Una vez que haya modificado su configuración de StyleCop, ¡no habrá terminado!
Esos ajustes solo se aplicarán a ese proyecto, y eso definitivamente podría ser insuficiente.
Yo personalmente sugiero mover ese archivo de StyleCop.Settings a un directorio al nivel de solución y agregarlo como un "Artículo de solución". Luego verifique ese archivo en TFS (o en el sistema de control de fuente que esté usando). Ahora esas configuraciones de StyleCop son una parte de la solución completa, y todos las obtendrán cuando hagan un "Get Latest". Si es necesario, puede anular la configuración de la solución con la configuración del proyecto (un archivo StyleCop.Settings en el nivel del proyecto anulará uno en el nivel de la solución).

La única manera de hacer que su configuración de StyleCop sea más global que eso es moverlos aún más alto en el árbol de directorios (hasta el nivel Team Project si está usando TFS, no confiable desde hacer GetLatest en la solución level no los distribuirá a todo el mundo), o sobrescribir el archivo Settings.StyleCop en el directorio de instalación de StyleCop (aún más poco fiable ya que no puede ser manejado por el control de fuente y debe enviarse por correo electrónico a todos o algo así).

En general, definitivamente hay maneras de hacer que la configuración específica de StyleCop para su equipo sea tan global como lo desee, tiene muchas opciones.