如何在实例上调用InvokeMember?
例如,如果我想MyMethod()用"argument string"实例的参数调用该方法:
MyObject myInstance = MyObject.GetObject();
// ?
Run Code Online (Sandbox Code Playgroud)
我试过这个:
myInstance.GetType().InvokeMember("MyMethod",
BindingFlags.InvokeMethod | BindingFlags.Public,
null,
null,
new Object[] { "argument string" })
Run Code Online (Sandbox Code Playgroud)
但它不起作用,抱怨MyObject没有MyMethod,实际上它是一个实例方法,而不是一个类方法,所以我认为它试图将它作为静态方法调用.
有帮助吗?
你的第二个null应该是调用的目标:
myInstance.GetType().InvokeMember("MyMethod",
BindingFlags.InvokeMethod | BindingFlags.Public,
null,
myInstance,
new Object[] { "argument string" })
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅文档.
| 归档时间: |
|
| 查看次数: |
6062 次 |
| 最近记录: |