我想从未引用的程序集中获取一个类型。我在这个问题中尝试了这个建议:How to get a type from an unreferenced assembly?像这样:
Assembly assembly = Assembly.LoadFrom(@"c:\Path\To\My\Assembly\myAssembly.dll");
Type myType = assembly.GetType("myAssembly.MyClass");
读取程序集有效,但GetType方法返回null
。请求的类型(MyClass
)是公开的,因此这不能成为我在上面链接的问题的一个答案中的读数。
修改
我必须从不同的程序集中加载许多不同的类型。我想加载的类型是在XML文件中定义的。现在myType.FullName
存储在XML文件中,这是有效的。但所以我没有得到存储类型的程序集的名称。我现在的问题是:
是否可以通过指定GetType
来获取带有myType.AssemblyQualifiedName
- 方法的类型?
我试过了,但它对我不起作用 - 保存的类型为null
。