在.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?

慕标琳琳
浏览 446回答 2
2回答

烙印99

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