Вот как я это сделал:
Assembly assembly = Assembly.LoadFrom(assemblyName);
System.Type type = assembly.GetType(typeName);
Object o = Activator.CreateInstance(type);
IYourType yourObj = (o as IYourType);
, где assemblyName
и typeName
- строки, например:
string assemblyName = @"C:\foo\yourDLL.dll";
string typeName = "YourCompany.YourProject.YourClass";//a fully qualified type name
, тогда вы можете вызывать методы на вашем объекте:
yourObj.DoSomething(someParameter);
Конечно, какие методы вы можете вызывать, определяется вашим интерфейсом IYourType
...