Na, ich glaube er meint: Deklariere dein IPlugin-Interface, erzeuge ein paar
DLL mit jeweils einer Klasse, die das IPlugin-Interface implementieren, schmeiss die
DLL in ein Verzeichnis und zum dynamischen laden lädst Du die Assemble und fragst mit Reflection, ob die exportierte Klasse in der
DLL das IPlugin-Interface implementiert.
Code:
...
Assembly assembly = Assembly.LoadFile(fullFilename);
foreach (Type type in assembly.GetTypes())
if (type.IsClass && type.IsPublic)
if (type.GetInterfaces().Contains(typeof(IPlugin)))
// type ist eine Plugin-Klasse und kann jetzt verwendet werden.
...