Error del compilador CS1689

Actualización: noviembre 2007

Mensaje de error

El atributo 'Nombre del atributo' sólo es válido en métodos o clases de atributos
Attribute 'Attribute Name' is only valid on methods or attribute classes

Este error sólo se produce con el atributo ConditionalAttribute. Como indica el mensaje, este atributo únicamente se puede utilizar en métodos o clases de atributo. Por ejemplo, se generará el error si se intenta aplicar este atributo a una clase.

Ejemplo

El código siguiente genera el error CS1689.

// CS1689.cs
// compile with: /target:library
[System.Diagnostics.Conditional("A")]   // CS1689
class MyClass {}