Tengo el siguiente método:
public static Type[] GetAllClasses(this Assembly assembly)
{
var types= assembly.GetExportedTypes().Where(x=>x.IsClass).OrderBy(x=>x.Name).ToArray();
return types;
}
Me gustaría excluir todos los tipos que son colecciones. ¿Cómo puedo hacer eso?
Al depurar puedo ver que la colección tiene una baseType "List" 1 ". ¿Cómo puedo atrapar eso y excluirlos?
muchas gracias
Respuestas
2 para la respuesta № 1Esto podría funcionar ...
var types= assembly.GetExportedTypes()
.Where(x=>x.IsClass && x.GetInterface("IEnumerable")==null)
.OrderBy(x=>x.Name).ToArray();
(O utilice las interfaces de recopilación más específicas: IList o ICollection si desea excluirlas)