Unter der Annahme, dass Sie Ihre Montage zu thisAsm (in diesem ex ich bin mit dem ausgeführten Assembly) geladen haben,
Dadurch erhalten Sie alle nicht abstrakten Klassen:
Assembly thisAsm = Assembly.GetExecutingAssembly();
List<Type> types = thisAsm.GetTypes().Where(t => t.IsClass && !t.IsAbstract).ToList();
Und das wird Sie alle Klassen bekommen ses, das eine bestimmte Schnittstelle implementiert.
(zB. Wenn Sie nur die Klassen zu erhalten, die IYourInterface implementiert, dann)
Assembly thisAsm = Assembly.GetExecutingAssembly();
List<Type> types = thisAsm.GetTypes().Where
(t => ((typeof(IYourInterface).IsAssignableFrom(t)
&& t.IsClass && !t.IsAbstract))).ToList();
Sobald Sie diese Liste der Elemente haben, können Sie die Mitglieder jeder Art zeigen können, durch Aufrufen der GetProperties() und GetMethods() für jedes Mitglied der Typenliste.
-1 für keine Erklärung über die Links hinaus. –
Der erste Link existiert nicht mehr – Jetti