C# 私有对象“试图访问缺少的成员”异常

C# 私有对象“试图访问缺少的成员”异常,c#,.net,private-members,privateobject.invoke,C#,.net,Private Members,Privateobject.invoke,我试图使用私有方法调用对象的私有方法。此方法接受三个参数。我试图调用的方法的签名和调用此方法的代码如下所示 私人方法的签名: Public Class Foo { private void SaveCallback(SaveAggregationViewResponse response, Action rollbackActionIfSaveFails,

我试图使用私有方法调用对象的私有方法。此方法接受三个参数。我试图调用的方法的签名和调用此方法的代码如下所示

私人方法的签名:

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”

我调用私有方法的方式是否有问题,或者其他设置是否有问题


谢谢

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

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

不确定是否包含空值,如果无效,请将其删除。

您能显示引发了异常吗?@HamletHakobyan添加了异常消息,我应该添加完整的异常详细信息吗?为什么要从Foo类中删除方法名称?如果Foo看起来像这样,它根本就不会被编译。@HamletHakobyan很抱歉,我错误地删除了方法名。试着调用它并显示结果。var mi=typeofoo.GetMethodSaveCallback,BindingFlags.Instance | BindingFlags.NonPublic;