标题:通过反射调用泛型的问题
取消只看楼主
willstier
Rank: 2
等 级:论坛游民
帖 子:40
专家分:60
注 册:2009-8-5
结帖率:85.71%
已结贴  问题点数:20 回复次数:1 
通过反射调用泛型的问题
最近被搞死了。为了性能和时间,我没有用反射来做,但是始终觉得不爽。想问下。问题在注释中
程序代码:
     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编辑过]

2016-09-06 18:10
willstier
Rank: 2
等 级:论坛游民
帖 子:40
专家分:60
注 册:2009-8-5
得分:0 
回复 2楼 向洪林
是的,但是从开发效率来说,尤其有用,否则几十个表,几十个相同操作,烦死了。

帮助别人就是帮助自己,回答错误,也是发现自己的错误。
2016-09-09 18:22



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-468533-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020816 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved