.net反射程序集加载异常

h_a*_*a86 5 .net reflection

嗨我正在加载一个组件

Assembly testAssembly = Assembly.LoadFile("abc.dll");
Type t = testAssembly.GetType("abc.dll");
Run Code Online (Sandbox Code Playgroud)

但收到错误"绝对路径信息是必需的",但我的DLL位于同一文件夹中

si6*_*618 7

沃尔玛对GetType方法调用有一个很好的观点,但要回答这个问题:

string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "abc.dll");
Assembly testAssembly = Assembly.LoadFile(path);
Run Code Online (Sandbox Code Playgroud)

如果AppDomain.CurrentDomain不可靠,那么一个稍微复杂的方式:

string path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "abc.dll");
Run Code Online (Sandbox Code Playgroud)