Ian*_*oyd 0 .net c# reflection
我有一个MethodInfo对象,它定义了我想要调用的方法.
除了我需要的object是MethodInfo来自何方.
伪代码:
void CallMethod(MethodInfo m)
{
Object o = Activator.CreateInstance(m.ClassType);
o.GetType().InvokeMember(m.Name, BindingFlags.InvokeMethod, null, o, null);
}
Run Code Online (Sandbox Code Playgroud)
除了我不知道如何获得属于type的类MethodInfo.
我怎么称呼MethodInfo?
在MethodInfo不知道的方法调用的目标-将MethodInfo有效地所属的类型,而不是一个具体的对象.
您需要有一个目标类型的实例来调用该方法.您可以使用MethodInfo.DeclaringType(继承自己MemberInfo.DeclaringType)轻松找到类型,但此时您可能没有实例...
正如里德所指出的,MemberInfo.ReflectedType可能更合适DeclaringType,取决于您计划如何使用它.
你没有解释你正在做什么,但如果你的设计的其余部分可以适当改变,那么Action代表一个代表而不是一个代表可能更MethodInfo合适.
| 归档时间: |
|
| 查看次数: |
468 次 |
| 最近记录: |