当前位置:编程学习 > C#/ASP.NET >>

各位,请问C#如何获取反射得到的方法的参数类型,这个参数是list<struct>,如何重新构造成这么一个list<struct>对象呢?

请假大家一个问题
我现在想测试自定义IDL里的方法,这里有多个IDL文件,里面各自有多个方法和struct的定义,我将其全部编译成DLL文件,现在通过反射获取到了某一个DLL文件里的一个接口,方法名,返回类型,参数类型,准备往方法里面传入实参值进行验证。

这时发现,参数类型里面有list<struct>形式的参数(例如,反射回参数名为“BDM_IDL.RealTimeDataMPProperty[]”这是一个在BDM_IDL的module下定义的一个RealTimeDataMPProperty结构体的列表。)
我的方案是想过通过在界面文本框里输入json字符串,然后解析json字符串到list<RealTimeDataMPProperty>列表里,所以必须拿到文本框里输入的json字符串和一个建立好的list<RealTimeDataMPProperty>列表
但是我只会通过inputParameterInfo.InputParameterType = p.ParameterType.Name;语句拿到这个列表的名字Name,即"BDM_IDL.RealTimeDataMPProperty[]",而不懂得如何获取这个列表中的自定义类型,并新建立一个list对象?
谁能帮忙解决下?谢谢啦~

看到了这篇帖子,http://bbs.csdn.net/topics/350135033?page=1#post-394357293  与我的需求还有些偏差,各位可以参考下~

附图:
反射 C# 获取参数类型 参数时list<struct>列表 --------------------编程问答-------------------- GetGenericArguments
http://msdn.microsoft.com/zh-cn/library/system.reflection.methodinfo.getgenericarguments(v=vs.90).aspx --------------------编程问答-------------------- 用这句解决了 object list = JsonConvert.DeserializeObject(ipi.InputParameterValue, ipi.InputParameterType);
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,