2013-03-18 18 views
14

C'è un modo per impedire facilmente che gli avvertimenti StyleCop vengano visualizzati all'interno di progetti specifici in una soluzione. O, più acutamente, un modo per selezionare i progetti che l'analisi StyleCop dovrebbe eseguire su Visual Studio?Disabilita analisi stylecop per progetti specifici all'interno della soluzione

Abbiamo una soluzione con 9 progetti. Esistono solo 2 progetti per i quali desidero visualizzare gli avvisi StyleCop, quindi ho creato i file StyleCop.Settings all'interno delle directory principali del progetto. Ciò significa che, per il resto dei progetti, viene applicato il set di regole predefinito e viene visualizzato uno schermo pieno di avvisi ogni volta che apro una classe.

L'unico modo in cui posso pensare di rimuovere questi avvisi consiste nell'aggiungere un altro file StyleCop.Settings a livello di cartella sopra con tutte le regole disattivate e impostare le opzioni di unione sui file specifici delle impostazioni che mi interessa non fondersi con questo file principale . Questo però sembra sbagliato. C'è un'opzione più pulita o è la mia unica?

AGGIORNAMENTO: sto cercando in particolare un modo per impedire che gli avvisi vengano visualizzati in Visual Studio. Ho aggiunto un file Settings.StyleCop alla cartella della soluzione e disabilitato tutte le regole. Eseguo l'analisi di StyleCop su uno dei miei progetti di test e non ci sono errori segnalati. Tuttavia, l'apertura di una classe di test rivela una serie di avvertimenti di StyleCop, che voglio sopprimere. Questo potrebbe essere il plugin StyleCop per ReSharper? Ho creato un profilo per la pulizia del codice e ho disabilitato alcune regole all'interno, ma ciò non sembra fare alcuna differenza all'interno delle mie classi di test.

+0

possibile duplicato di [Come rendere StyleCop di ignorare un progetto in una soluzione ?] (http://stackoverflow.com/questions/8926993/how-to-make-stylecop-to-ignore-a-project-in-a-solution) –

risposta

22

Si prega di dare un'occhiata a configurazione File Lists - consentono di disabilitare le regole di default per ciascun progetto:

abilitata o disabilitata per default

Inoltre, una nuova impostazione consente di determinare se le regole devono essere abilitate o disabilitate per impostazione predefinita. Questo può essere impostato a il livello del progetto o al livello SourceFileList. Ad esempio, ecco come si dovrebbe impostare un progetto con tutte le regole disabilitato per impostazione predefinita, e solo due regole esplicitamente permesso:

<StyleCopSettings Version="4.3"> 
    <GlobalSettings> 
     <BooleanProperty Name="RulesEnabledByDefault">False</BooleanProperty> 
    </GlobalSettings> 
+1

Epic. Grazie Alessandro. Ho aggiunto un file di impostazioni nella cartella della soluzione contenente quella singola impostazione globale, e sono stati rimossi tutti gli avvisi dai progetti che non sono interessato a coprire con StyleCop. – levelnis

+1

concordato. Leggendo la documentazione degli elenchi di file collegati, questo è epico. Sono entusiasta di fare l'inverso - un file a livello di soluzione con regole abilitate e un (pochi) file a livello di progetto con regole disabilitate per impostazione predefinita come mostrato. Disabilitare di default più in alto poi abilitare laddove necessario più in basso ... o abilitare di default più in alto poi disabilitare ove necessario più in basso sembrerebbe dipendere dal rapporto di progetto coinvolto - progetti da analizzare vs. progetti da non analizzare. – J0e3gan

Problemi correlati