En supposant que vous avez votre assemblée chargé de thisAsm (dans cet ex j'utilise l'assemblage d'exécution),
Cela vous obtiendrez toutes les classes non abstraites:
Assembly thisAsm = Assembly.GetExecutingAssembly();
List<Type> types = thisAsm.GetTypes().Where(t => t.IsClass && !t.IsAbstract).ToList();
Et cela vous obtiendra tous les clas ses qui implémente une interface spécifique.
(Ex. Si vous avez besoin pour obtenir uniquement les classes qui implémente IYourInterface, puis)
Assembly thisAsm = Assembly.GetExecutingAssembly();
List<Type> types = thisAsm.GetTypes().Where
(t => ((typeof(IYourInterface).IsAssignableFrom(t)
&& t.IsClass && !t.IsAbstract))).ToList();
Une fois que vous avez cette liste d'articles, vous pouvez afficher les membres de chaque type, en appelant les GetProperties() et GetMethods() sur chaque membre de la liste des types.
-1 pour ne pas inclure d'explication au-delà des liens. –
Le premier lien n'existe plus – Jetti