2009-09-18 16 views

risposta

1

Ho scaricato FxCop come suggerito da @ di TrueWill commento sulla risposta @AnthonyWJones'. Questo mi ha dato il SuppressMessage:

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

Questo era molto più difficile di quanto avrebbe dovuto essere. Cosa è successo a quell'integrazione FXCop in Visual Studio? Grazie ai rispondenti per il loro aiuto.

+0

Grazie, come disattivare gli avvisi StyleCop SA1307 e SA1305? –

+0

@Hamish: non so su StyleCop. Potrebbe essere necessario fare una nuova domanda per questo. –

+0

Va bene, l'ho fatto.Nel caso in cui qualcun altro lo trovi utile, ecco un link alla domanda: http://stackoverflow.com/questions/5265154/how-to-disable-stylecop-warnings-sa1307-and-sa1305-around-a- struct –

1

Usa #pragma warning(suppress: Cxxxx)

Si può mettere il pragma presso il campo di applicazione appropriata nel file di origine (cioè di classe, metodo)

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

+0

L'avviso #pragma funziona per gli avvisi del compilatore. Funziona anche per l'analisi del codice? – OregonGhost

+0

Questo non funziona per le regole FxCop – JaredPar

+0

@OregonGhost L'avviso #pragma (soppressione) è stato introdotto specificamente per l'analisi del codice TFS. –

5

È possibile utilizzare l'attributo SupressMessage in questo modo: -

[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 
} 

su un metodo, la proprietà, il tipo ecc

+0

@AnthonyWJones: Ho provato '[System.Diagnostics.CodeAnalysis.SuppressMessage (" Microsoft.Usage "," CA1305: Microsoft.Globalization ")]' (per brevità) su un metodo, ma ancora l'avviso ha mostrato. Qualche idea? –

+0

@Alex: provare a modificare la categoria in "Microsoft.Globalization", vedere: - http://msdn.microsoft.com/en-us/library/ms182190.aspx – AnthonyWJones

+1

Si potrebbe provare a eseguire FxCop, facendo clic con il pulsante destro del mouse sugli errori e scegliendo Copia come SuppressMessage. Questo dovrebbe darti il ​​giusto testo di attributo. – TrueWill

Problemi correlati