如何在运行时获取参数的名称类型?

时间:2016-07-23 00:27:47

标签: c# .net

所以我有一个MethodInfo对象m我正在测试,我想提取一个参数的类型。例如,我想要"int"string来自以下内容。

public void SomeMethod ( int i, string s )
{
   // ... 
}

当我跑步时

ParameterInfo pinf = m.GetParameters.FirstOrDefault(p => p.Name == "i"); 

然后

ping.GetType().Name 

返回"RuntimeParameterInfo"

那么我真正需要做些什么才能获得"int"

这是我编写的一个例子,但这个想法来自我正在编写的单元测试。

2 个答案:

答案 0 :(得分:1)

改为使用ping.ParameterType.Name

  

ParameterInfo.ParameterType Property

     

获取此参数的类型。

答案 1 :(得分:1)

ping.ParameterType
  

获取此参数的类型。