方法参数C#

Max*_*r88 4 c# reflection

我在C#中编写了这样的方法.

 MethodBase method = MethodBase.GetCurrentMethod();
 string key ="";
 for (int i = 0; i < method.GetParameters().Length; i++)
 {
     key=method.GetParameters().Name;
     // need value of parameter here             
 } 
Run Code Online (Sandbox Code Playgroud)

我通过上面的代码获取参数名称.我的问题是:如何获取我方法中的参数值?

Jon*_*eet 5

您不能 - 至少不使用调试器API(至少是非平凡的).该信息无法通过反射获得.特别是,MethodBase您正在获取的对象可能在每次调用时都是相同的.

(我认为你写的方法并不像你所展示的那样,我真的希望你不要GetParameters在这样的循环中调用,但这是一个副作用.)