我需要在运行时加载的程序集中执行一个方法。我要加载的程序集是包含接口实现的插件。
这是加载类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Reflection;
namespace Stub.Logic {
public class DllReader {
private static List<Type> connectionTypes = new List<Type>();
public static void LoadConnectionTypes(string path) {
DirectoryInfo dllDirectory = new DirectoryInfo(path);
FileInfo[] dlls = dllDirectory.GetFiles("*.dll");
foreach (FileInfo dllFileInfo in dlls) {
Assembly assembly = Assembly.Load(dllFileInfo.FullName);
connectionTypes.AddRange(assembly.GetTypes());
}
}
//public static Connection GetConnection(string connectionTypeName) {
// return new Connection();
//}
}
}
我收到了这个错误:
无法加载文件或程序集'.. \ Plugins \ MqConnection.dll'或其中之一 它的依赖关系。给定的程序集名称或代码库无效。 (来自HRESULT的异常:0x80131047)
这是加载的程序集:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using System.IO;
using Stub.Logic;
namespace MqConnection {
public class MqConnection : Connection {
// Stuff here...
}
}
我做错了什么?