通过反射调用泛型的问题
最近被搞死了。为了性能和时间,我没有用反射来做,但是始终觉得不爽。想问下。问题在注释中程序代码:
class A { } class B { } class ABLL { public static int Method(List<A> alist) { return 0; } } class BBLL { public static int Method(List<B> blist) { return 0; } } class Program { static void Main(string[] args) { #region 其他地方产生如下代码: List<A> aList = new List<A>(); //序列化为json字符串 string strAList = JsonConvert.SerializeObject(aList); string strObject = "A"; #endregion #region 本地代码 // 通过字符串 strObject,得知传递过来的数据对象为A, //问题是每次都不同,也可能是B,也可能是C。。。所以需要使用反射直接寻找对应的类 //假设是A。则执行如下代码: List<A> localAList = JsonConvert.DeserializeObject<List<A>>(strAList); ABLL.Method(localAList);//执行A对应的方法 //这里的localAlist就是我需要的。现在的困难是JsonConvert的参数也是泛型, //而且是一个List。就不知道怎么弄了。 //请指点 #endregion Console.ReadKey(); } }
[此贴子已经被作者于2016-9-6 18:16编辑过]