当前位置: 代码迷 >> ASP.NET >> 怎么动态设置List<T> 中的T
  详细解决方案

怎么动态设置List<T> 中的T

热度:3921   发布时间:2013-02-25 00:00:00.0
如何动态设置List<T> 中的T
C#中可以这样得到一个类型为A的泛型集合,List<A> alist=new List<A>();我想问一下,如果事先不知道T的类型,比如通过参数传进来一个字符串:"MyClass",当然这个字符串对应一个类的,那么如何根据传进来的字符串,动态得到一个List<T>这样的泛型呢?

------解决方案--------------------------------------------------------
try

  static void Main(string[] args)
        {
            var list = GetList("ConsoleApplication1.Program");//命名空间+类名
            Console.ReadLine();
        }
        static IList GetList(string str)
        {
            var genericTypeList = typeof(List<>).MakeGenericType(Type.GetType(str));
            return Activator.CreateInstance(genericTypeList) as IList;
        }
  相关解决方案