2010-04-16 16 views
7

Necesito suprimir una advertencia específica del compilador en C#. Ahora puedo hacerlo así:Cómo suprimir una advertencia del compilador en C# sin usar #pragma?

#pragma warning disable 0649 

private string _field; 

#pragma warning restore 0649 

¿Hay alguna manera de hacerlo como el siguiente?

[SuppressCompilerWarning("0649")] 
private string _field; 

Porque solo necesito suprimir las advertencias para este campo, no un bloque de código.

Nota: Quiero suprimir el advertencia de compilador, no la advertencia de Code-Analysis.

Gracias!

Respuesta

7

NO :

private string _field = null; 

¿eliminar la advertencia también?

+0

Sí, una solución perfecta. ¡Muchas gracias! –

2

No. Puede hacerlo por todo el proyecto a través de un indicador de compilación, pero de lo contrario un campo es solo otro (pequeño) bloque.

Por supuesto, usted podría asignarle un valor en alguna parte ... que lo hará más feliz ;-P (estoy asumiendo que es en realidad le asigna un valor a través de la reflexión o algo?)

+0

Tienes razón. Será asignado por un marco DI, y ese campo no debería ser visible para el mundo exterior. –

+0

El problema es que usar un par de #pragma es realmente aburrido. –

+0

@Dylan - luego dale un valor al código en alguna parte. Francamente, grandes porciones de la mayoría del código podrían considerarse "aburridas", pero son críticas. –

Cuestiones relacionadas