C# 使用Activator在另一个程序集中创建类型的实例
我正在尝试在引用的程序集中创建类型的实例C# 使用Activator在另一个程序集中创建类型的实例,c#,.net,reflection,C#,.net,Reflection,我正在尝试在引用的程序集中创建类型的实例 var obj = Activator.CreateInstance("Config", "Config.TypeName"); var RunMethodInfo = obj.GetType().GetMethod("Run"); //null get方法返回null尽管run方法存在并且激活器似乎创建了实例,但run方法是公共的,知道GetMethod为什么返回null吗?我只需要调用Unwrap()就可以了 var obj = Activator
var obj = Activator.CreateInstance("Config", "Config.TypeName");
var RunMethodInfo = obj.GetType().GetMethod("Run"); //null
get方法返回null尽管run方法存在并且激活器似乎创建了实例,但run方法是公共的,知道GetMethod为什么返回null吗?我只需要调用Unwrap()就可以了
var obj = Activator.CreateInstance("Config", "Config.TypeName").Unwrap();
var RunMethodInfo = obj.GetType().GetMethod("Run");
请尝试
obj.GetType().GetMethods()
并查看返回的内容…运行时是什么样子的?它是实例方法吗?什么参数?您必须共享引用部件的零件才能帮助您完成此操作。activator.createinstance
的第一个参数应该是程序集名称:物理文件名。第二个参数应该是确切的类型。查看msdn了解更多信息:感谢所有人的帮助,我找到了答案。