Error del compilador CS0617
Actualización: noviembre 2007
Mensaje de error
'referencia' no es un argumento de atributo con nombre válido porque no es un tipo de parámetro de atributo válido
'reference' is not a valid named attribute argument because it is not a valid attribute parameter type
Se intentó obtener acceso a un miembro private de una clase de atributo.
Ejemplo
El código siguiente genera el error CS0617.
// CS0617.cs
using System;
[AttributeUsage(AttributeTargets.Struct |
AttributeTargets.Class |
AttributeTargets.Interface)]
public class MyClass : Attribute
{
public int Name;
public MyClass (int sName)
{
Name = sName;
Bad = -1;
Bad2 = -1;
}
public readonly int Bad;
public int Bad2;
}
[MyClass(5, Bad=0)] class Class1 {} // CS0617
[MyClass(5, Bad2=0)] class Class2 {}