如何将参数类型数组传递给Type[]



场景: 我有App.Config文件,其中有某些方法,我想通过反射调用它们。在这样做的同时,我还需要告诉传递给该方法的参数的类型。我在运行时检索该方法的参数类型列表,如下所示:

ParameterInfo[] parameters = magicType.GetMethod("ItsMagic").GetParameters();

但是我不知道如何把这个数组放在下面的函数中:

magicType.GetMethod("ItsMagic", new Type[] {parameters.Cast<Type>()});

将导致以下错误:

错误:不能隐式转换类型"System.Collections.Generic"。IEnumerable'到'System.Type'。存在显式转换(您是否缺少强制类型转换?)

有什么建议吗?

parameters.Select(p=>p.ParameterType).ToArray()

magicType.GetMethod("ItsMagic", parameters.Select(p=>p.ParameterType).ToArray() );

相关内容

  • 没有找到相关文章

最新更新