2009-09-18 14 views

Respuesta

1

He descargado FXCop según lo sugerido por el comentario de @ TrueWill en respuesta @AnthonyWJones'. Esto me dio el SuppressMessage:

[SuppressMessage("Microsoft.Globalization", 
    "CA1305:SpecifyIFormatProvider", 
    MessageId = "System.String.Format(System.String,System.Object)")] 

Esto fue mucho más difícil de lo que debería haber sido. ¿Qué pasó con la integración de FXCop en Visual Studio? Gracias a los respondedores por su ayuda.

+0

Gracias, ¿cómo desactivo las advertencias de StyleCop SA1307 y SA1305? –

+0

@Hamish: No sé sobre StyleCop. Es posible que deba hacer una nueva pregunta para eso. –

+0

Está bien, lo he hecho.En caso de que alguien más lo encuentre útil, aquí hay un enlace a la pregunta: http://stackoverflow.com/questions/5265154/how-to-disable-stylecop-warnings-sa1307-and-sa1305-around-a- estructura –

1

Uso #pragma warning(suppress: Cxxxx)

Usted puede poner el pragma en el ámbito apropiado en el archivo de origen (es decir, clase, método)

Ver http://msdn.microsoft.com/en-us/library/2c8f766e(VS.80).aspx

+0

La advertencia de #pragma funciona para las advertencias del compilador. ¿También funciona para el análisis de código? – OregonGhost

+0

Esto no funciona para las reglas de FxCop – JaredPar

+0

@OregonGhost #pragma warning (suprimir) se introdujo específicamente para el análisis de código TFS. –

5

Puede usar el atributo SupressMessage de esta manera: -

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2233:OperationsShouldNotOverflow", MessageId = "newValue+1", Justification = "The reason I think its acceptable in this case")] 
void SomeMethod() 
{ 
    // Some code that would normal cause this Code Analysis message 
} 

En un método, propiedad, tipo, etc.

+0

@AnthonyWJones: Intenté '[System.Diagnostics.CodeAnalysis.SuppressMessage (" Microsoft.Usage "," CA1305: Microsoft.Globalization ")]' (por razones de brevedad) en un método pero aún así la advertencia aparecía. ¿Algunas ideas? –

+0

@Alex: Intente cambiar la categoría a "Microsoft.Globalization", consulte: - http://msdn.microsoft.com/en-us/library/ms182190.aspx – AnthonyWJones

+1

Puede intentar ejecutar FxCop, haciendo clic con el botón derecho en los errores y eligiendo Copiar como SuprimirMensaje. Eso debería darte el texto de atributo correcto. – TrueWill

Cuestiones relacionadas