在我的项目中,我需要使用插件。但是为了在项目中使用这些插件,我需要导入插件的引用。由于我事先不知道项目将使用多少个或哪些插件,因此我希望能够动态地将它们导入我的项目中。
String path = Application.StartupPath;
string[] pluginFiles = Directory.GetFiles(path, "*.dll");
ipi = new IPlugin[pluginFiles.Length];
Assembly asm;
for (int i = 0; i < pluginFiles.Length; i++)
{
string args = pluginFiles[i].Substring(
pluginFiles[i].LastIndexOf("\\") + 1,
pluginFiles[i].IndexOf(".dll") -
pluginFiles[i].LastIndexOf("\\") - 1);
asm = Assembly.LoadFile(pluginFiles[i]);
Type[] types = asm.GetTypes();
在这个代码示例中,我搜索了所有的.dll
文件,并将它们放入了一个字符串列表中。但是现在我该如何加载所有这些.dll
文件呢?或者是否有一种方式可以在没有真正导入它们的情况下使用这些.dll
文件?