Mostrando entradas con la etiqueta Type. Mostrar todas las entradas
Mostrando entradas con la etiqueta Type. Mostrar todas las entradas

miércoles, noviembre 14, 2007

Cómo obtener las clases (y sus métodos y propiedades) de un assembly de .net utilizando Reflection

// Obtener las clases que contiene determinado assembly

Assembly a = Assembly.LoadFile(/* Assembly (path completo)*/);

Type[] mytypes = a.GetTypes();

BindingFlags flags = ( BindingFlags.NonPublic
BindingFlags.Public BindingFlags.Static
BindingFlags.Instance BindingFlags.DeclaredOnly);

// Para cada clase, obtener sus campos

foreach (Type t in mytypes)

{

this.txtFields.Items.Add("Type: " + t.Name);

FieldInfo[] fi = t.GetFields(flags);

foreach (FieldInfo m in fi)

{

this.txtFields.Items.Add(m.Name + " (" + m.FieldType.FullName + ")");

}

}