我怎样才能看到Type.InvokeMember方法的实现?

时间:2014-01-07 22:09:13

标签: c# .net reflection

我希望看到InvokeMember类的Type方法实现。但是当我右键单击该方法并单击Go To Declaration时,我看到的只是 abstract < / strong>这样的方法定义:

abstract public Object InvokeMember( /* parameters */ ); 

这个方法有两个重载版本,但是他们正在调用这个抽象版本:

[DebuggerStepThroughAttribute]
[Diagnostics.DebuggerHidden] 
 public Object InvokeMember(String name,BindingFlags invokeAttr,Binder binder, Object target, Object[] args, CultureInfo culture)
 {
      return InvokeMember(name,invokeAttr,binder,target,args,null,culture,null);
 } 

 [DebuggerStepThroughAttribute] 
 [Diagnostics.DebuggerHidden] 
 public Object InvokeMember(String name,BindingFlags invokeAttr,Binder binder, Object target, Object[] args)
 { 
      return InvokeMember(name,invokeAttr,binder,target,args,null,null,null);
 }

我可以看到其他方法和类的所有实现。但是我看不到InvokeMember实现,为什么?那个实施在哪里?

注意:我正在使用.NET ReflectorReSharper

1 个答案:

答案 0 :(得分:3)

以下是InvokeMember抽象方法的覆盖:

enter image description here

所以你可能会对System.RuntimeType.InvokeMember感兴趣,System.Type是一个来自{{1}}的内部具体类。