C# Type.GetMethod始终返回null

C# Type.GetMethod始终返回null,c#,reflection,methodinfo,stack-frame,C#,Reflection,Methodinfo,Stack Frame,我想从调用方法中获取MethodInfo对象,以确定该方法上是否设置了特殊属性 调用Run()方法的Programm类 我要在其中确定自定义属性的类 public class RestHandler { public void Handler(Type t) { StackFrame frame = new StackFrame(1); var method = frame.GetMethod();

我想从调用方法中获取MethodInfo对象,以确定该方法上是否设置了特殊属性

调用Run()方法的Programm类

我要在其中确定自定义属性的类

public class RestHandler
    {
        public void Handler(Type t)
        {
            StackFrame frame = new StackFrame(1);
            var method = frame.GetMethod();

            MethodInfo methodInfo = t.GetMethod(method.Name, BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static);

            var attributes = methodInfo.GetCustomAttributes<RestAttribute>();
        }
    }
我这里的问题是MethodInfo对象(
MethodInfo
)始终为空,即使堆栈框架中的方法对象设置正确。 属性
method.Name
返回调用方法的正确名称。
为什么
methodInfo
对象总是空的?

这是一个私有方法:

static void Run()
添加BindingFlags.NonPublic以通过反射访问它

MethodInfo methodInfo = t.GetMethod(method.Name, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static);

@克里斯,如果答案是这样的话,你能帮我标记一下吗?谢谢
static void Run()
MethodInfo methodInfo = t.GetMethod(method.Name, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static);