Pregunta

Estoy tratando de usar un poco de reflexión en un archivo .tt, más específicamente para determinar los tipos conocidos en una clase. Para hacer esto, solo uso una reflexión simple, o más bien quiero usar una reflexión simple, pero cuando intento:

List<String> GetKnownTypes(EntityType entity)
{
    List<String> knownTypes = new List<String>();
    System.Reflection.MemberInfo info = typeof(EntityType);
    object[] attributes = info.GetCustomAttributes(typeof(KnownTypeAttribute), false);
    for (int i = 0; i < attributes.Length; i++)
    {
        KnownTypeAttribute attr = (KnownTypeAttribute)attributes[i];
        knownTypes.Add(attr.Type.Name);
    }
    return knownTypes;
 }

Me abofeten las orejas con un error:

Error 1 Transformación de compilación: no se puede encontrar el tipo o nombre de espacio de nombres 'KnowTypeAttribute' (¿se le falta una directiva de uso o una referencia de ensamblaje?)

Pero, tengo una referencia a System.Runtime.serialization. También importo < #@ importación de nombres = "System.Runtime.Serialization" #> al comienzo del archivo TT. El marco de destino es .NET Framework 4 (sin perfil de cliente).

¿Cualquier pensamiento?

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top