En Visual Studio, puedo seleccionar la opción "Tratar advertencias como errores" para evitar que mi código se compile si hay advertencias. Nuestro equipo usa esta opción, pero hay dos advertencias que nos gustaría mantener como advertencias."Tratar todas las advertencias como errores, excepto ..." en Visual Studio
Hay una opción para suprimir las advertencias, pero QUEREMOS que aparezcan como advertencias, por lo que no funcionará.
Parece que la única manera de obtener el comportamiento que queremos es ingresar una lista de cada número de advertencia C# en el cuadro de texto "Advertencias específicas", excepto los dos que queremos tratar como advertencias.
Además del dolor de cabeza de mantenimiento, la mayor desventaja de este enfoque es que algunas advertencias no tienen números, por lo que no se pueden hacer referencia explícita. Por ejemplo, "No se pudo resolver esta referencia. No se pudo encontrar el conjunto 'Datos ....'"
¿Alguien sabe de una mejor manera de hacerlo?
Aclarando a aquellos que no ven de inmediato por qué es útil. Piensa en cómo funcionan la mayoría de las advertencias. Te dicen que algo está un poco apagado en el código que acabas de escribir. Se necesitan unos 10 segundos para repararlos, y eso mantiene la base de código más limpia.
La advertencia "Obsoleto" es muy diferente a esta. A veces arreglarlo significa simplemente consumir una nueva firma de método. Pero si una clase entera está obsoleta y tiene un uso disperso a través de cientos de miles de líneas de código, podría llevar semanas o más arreglarla. No quiere que la construcción se rompa por tanto tiempo, pero definitivamente QUIERE ver una advertencia al respecto. Esto no es solo un caso hipotético: esto nos ha sucedido a nosotros.
Las advertencias "advertencias" literales también son únicas. A menudo quiero para registrarlo, pero no quiero romper la compilación.
¿Puede poner espacios en su gran lista de números? Se ha llenado la línea de envoltura. – Ray
Gawd Odio las reglas complicadas que están hechas por personas, a menudo para calmar el ego de una persona específica. –
Veo su punto acerca de la advertencia obsoleta, esto no es arbitrario. –