C#中通过方法名构建MethodInfo?
这个得通过委托实现。Action或者Func。
一段示例代码如下:

MethodInfo method = (new Func<int, string>(i => i.ToString())).Method;

使用过程中要注意函数的重载。可以参考如下链接: https://docs.microsoft.com/en-us/dotnet/api/system.delegate.method

思路说明

委托(Action/Func)的 Method 属性就是其目标方法的 MethodInfo,因此可以借助 lambda 表达式"以代码取方法信息"。

  • 示例:MethodInfo m = ((Func<int, string>)(i => i.ToString())).Method;
  • 注意方法重载:委托签名要能唯一匹配到目标重载。
  • 若方法有多个重载,可改用 typeof(T).GetMethod(名称, 参数类型...) 显式指定。