我可以通过它的types获取C#委托的签名吗?
如果您有types信息,是否有直接的方法使用reflection来获取委托的参数列表?
举个例子,如果我声明一个委托types如下
delegate double FooDelegate (string param, bool condition);
并稍后获取该委托types的types信息,如下所示
Type delegateType = typeof(FooDelegate);
是否有可能从该types的信息对象中检索返回types(double)和参数列表({string,bool})?
MethodInfo method = delegateType.GetMethod("Invoke"); Console.WriteLine(method.ReturnType.Name + " (ret)"); foreach (ParameterInfo param in method.GetParameters()) { Console.WriteLine("{0} {1}", param.ParameterType.Name, param.Name); }