0

我正在尝试使用私有方法调用对象的私有方法。此方法采用三个参数。我尝试调用的方法的签名和调用此方法的代码如下所示

私有方法的签名:

Public Class Foo
{
  private void SaveCallback(SaveAggregationViewResponse response,
                                         Action rollbackActionIfSaveFails,
                                         Action postSaveActionOnSuccess)
  {}
}

我用来调用方法的代码:

var foo=new Foo()
Private pFoo=new PrivateObject(foo);
var response=new SaveAggregationViewResponse();
pFoo.Invoke("SaveCallback",new object[]{response,(Action)null,(Action)null}); //this line throws exception

异常消息:方法'Foo.SaveCallback' not found.

我调用私有方法的方式有问题还是其他设置有问题?

谢谢你

4

1 回答 1

0

尝试使用 ParamArray 而不是对象数组调用它

pFoo.Invoke("SaveCallback",response,null,null);

不确定是否包含空值,如果它不起作用,请摆脱它们。

于 2015-09-24T12:50:06.793 回答