在.Net反射中如何获取调用参数的值?

我想写一个通用的处理函数跟踪方法的调用情况,即记录指定方法调用时各个参数的传递情况:


public void MyMethod(相关参数定义)
{
    TraceMethod(MethodBase.GetCurrentMethod() as MethodInfo);
} 

void TraceMethod(MethodInfo method)
{

    XElement root = new XElement("root");
    foreach(ParameterInfo in method.GetParameters())
    {
        if(info.IsOut)
        {
            continue;
        }
        root.Add(new Element(info.Name, info.Value));
    }
}


请问该通过怎样的手段获取上述info.Value?


忽然笑
浏览 783回答 2
2回答

三国纷争

MethodBase.GetCurrentMethod()不反映调用方法时使用的类型参数,所以你就不能从MethodInfo 中获取到调用方法时使用的参数值,只能想办法传进TraceMethod方法中去。
打开App,查看更多内容
随时随地看视频慕课网APP