我想在运行时使用反射来加载类型。下面是步骤:在C#中使用反射在运行时加载类型
- 负载使用
Assembly.LoadFile(assemblyPath);
- 使用
GetType
方法得到类型 - 使用
Activator.CreateInstance
创建类型的实例的组件。
下面是我的代码:我现在面临
Assembly assembly = Assembly.LoadFile(assemblyName);
Type type = assembly.GetType("RomanConerter.Converter");
object obj = Activator.CreateInstance(type);
问题出在最后一行。我的转换器有一个方法名称Add
。但我无法使用obj访问此方法。
注意:我试图在其他项目中加载的程序集,并且hasrd编码了路径。
任何人都可以帮助我吗?
你确定它是'RomanConerter'而不是'RomanConverter'吗? – ThiefMaster
其实它的一个自定义转换器,只是在创建项目时出现拼写错误,将在以后更改 – Jash
@ThiefMaster,这告诉我这只是一个错字......谁知道 – series0ne