In Visual Studio, posso selezionare l'opzione "Considera gli avvisi come errori" per impedire la compilazione del codice in caso di avvisi. Il nostro team utilizza questa opzione, ma ci sono due avvisi che vorremmo mantenere come avvisi.
C'è un'opzione per sopprimere gli avvisi, ma vogliamo che vengano visualizzati come avvisi, quindi non funzionerà.
Sembra che l'unico modo per ottenere il comportamento desiderato è inserire un elenco di ogni numero di avviso C # nella casella di testo "Avvisi specifici", ad eccezione dei due che vogliamo vengano trattati come avvisi.
Oltre al problema di manutenzione, il più grande svantaggio di questo approccio è che alcuni avvisi non hanno numeri, quindi non è possibile fare riferimento esplicitamente. Ad esempio, "Impossibile risolvere questo riferimento. Impossibile individuare l'assembly" Dati .... ""
Qualcuno sa di un modo migliore per farlo?
Chiarire per chi non vede subito perché è utile. Pensa a come funzionano la maggior parte degli avvisi. Ti dicono che c'è qualcosa di strano nel codice che hai appena scritto. Occorrono circa 10 secondi per risolverli e ciò mantiene la base del codice più pulita.
L'avviso "Obsoleto" è molto diverso da questo. A volte risolverlo significa semplicemente consumare una nuova firma del metodo. Ma se un'intera classe è obsoleta e la si utilizza sparsi per centinaia di migliaia di righe di codice, potrebbero essere necessarie settimane o più per la correzione. Non vuoi che la build venga interrotta per così tanto tempo, ma sicuramente vuoi vedere un avvertimento al riguardo. Questo non è solo un caso ipotetico, è successo a noi.
Anche gli avvisi letterali "#warning" sono unici. Spesso desidero archiviarlo, ma non voglio interrompere la build.