Error del compilador CS0578

Actualización: noviembre 2007

Mensaje de error

El atributo Conditional no es válido en 'función' porque su tipo de valor devuelto no es void
The Conditional attribute is not valid on 'function' because its return type is not void

No se puede aplicar ConditionalAttribute a un método que tiene un tipo de valor devuelto diferente de void. El motivo de ello es que puede requerirse cualquier otro tipo de valor devuelto para un método en otra parte del programa.

Ejemplo

En el ejemplo siguiente se genera el error CS0578. Para resolver este error se debe eliminar ConditionalAttribute o cambiar el valor devuelto del método a void.

// CS0578.cs
// compile with: /target:library
public class MyClass
{
   [System.Diagnostics.ConditionalAttribute("a")]   // CS0578
   public int TestMethod()
   {
      return 0;
   }
}