Trate todas las advertencias como errores

Esto debería ser obvio, pero no pude hacerlo funcionar ...

Lo que estoy tratando de hacer es simple:Deseo que mi compilación falle con un error si hay una advertencia. Si los famososTreatWarningsAsErrors...

Lo configuré en mis propiedades de proyecto C #

Esto se traduce en el esperadoTreatWarningsAsErrors sección en mi csproj:

<TreatWarningsAsErrors>true</TreatWarningsAsErrors>

Hasta aquí todo bien, si agrego un inútil.private variable en mi código, resulta en un error de compilación:

private int unused;

Error 3 Advertencia como error: el campo 'XXXX.unused' nunca se usa

Pero todo el problema es que no puedo hacer que funcione.cuestiones de referencia de montaje. Si tengo una referencia a un ensamblaje desconocido, el compilador (devenv o msbuild) emite una advertencia, pero en su lugar quiero un error.

En última instancia, estoy tratando de configurar una configuración de compilación TFS de check-in cerrada, por lo que TFS rechazaría un compromiso en caso de que haya un "El componente referenciado 'XXXX' no se pudo encontrar."advertencia. Algo más simple que modificar la plantilla de proceso de compilación sería genial.

Respuestas a la pregunta(2)

Su respuesta a la pregunta