C#加载程序集不会带来方法

C#加载程序集不会带来方法,c#,winforms,.net-assembly,C#,Winforms,.net Assembly,我正在尝试编译一个WinForm应用程序(x86),其中引用了“Interop.SecurityProvider”库。 我尝试了不同的方法来调用该库,但所有结果都不成功 我有一个Win7 32位的虚拟机,应用程序正在x86中编译它 Assembly a = Assembly.Load(@"c:\code\Interop.SecurityProvider.dll"); Type myType = a.GetType("SecurityProvider"); MethodInfo myMethod

我正在尝试编译一个WinForm应用程序(x86),其中引用了“Interop.SecurityProvider”库。 我尝试了不同的方法来调用该库,但所有结果都不成功

我有一个Win7 32位的虚拟机,应用程序正在x86中编译它

Assembly a = Assembly.Load(@"c:\code\Interop.SecurityProvider.dll");
Type myType = a.GetType("SecurityProvider");
MethodInfo myMethod = myType.GetMethod("User");
object obj = Activator.CreateInstance(myType);
myMethod.Invoke(obj, null);
编译时,它会给我以下结果:

“object”不包含“foo”的定义,并且可以找到接受“obect”类型的第一个参数的非扩展方法“foo”

更新

foo.setUrl()
旧代码

SecurityProvider.foo Foo = (SecvurityProvider.foo)Activator.CreateInstance(null, "Interop.SecurityProvider.foo");
无法从程序集“bar”加载“Interop.SecurityProvider.foo”


编译时或运行时?您在哪里调用
foo
?错误消息与您的代码不匹配。您显示的代码中没有
foo
。请为我们提供代码和密码的匹配组合error@dcg编译时,它会给我以下结果如果您有对dll的引用(“带有对“Interop.SecurityProvider”库的引用”),为什么还要使用反射?为什么不在编译或运行时只使用
new SecurityProvider().User()
?您在哪里调用
foo
?错误消息与您的代码不匹配。您显示的代码中没有
foo
。请为我们提供代码和密码的匹配组合error@dcg编译时,它会给我以下结果如果您有对dll的引用(“带有对“Interop.SecurityProvider”库的引用”),为什么还要使用反射?为什么不干脆
新建SecurityProvider().User()