将字符串数据转换为List的类型<>

时间:2012-12-03 03:32:30

标签: c#-4.0

我想取一个字符串并根据它创建一个类型化的List 字符串中记录的“类型”。例如,假设str是“System.string”。 ID 喜欢为我创建List的方法。当然,字符串可以包含文本 “引用”程序集中的任何对象。我没有成功尝试以下方法:

    Type classType = Type.GetType(str);
    List<classType> wgList = new List<classType>();

我收到一条消息,指出“classType是一个字段但是像类型一样使用”..

如何解决这个问题以获得我需要的东西?

以下代码提供了一个很好的解决方案:

 Type ty = Type.GetType(ItemType); 
 wgList = (IList)Activator.CreateInstance(typeof(List<>).MakeGenericType(ty));    

1 个答案:

答案 0 :(得分:0)

你不能这样做,或者我不明白你的目的是什么?

使用清单&lt;对象&gt;代替。

你可以使用Extension方法是Cast&lt; System.Linq命名空间中的T&gt;()转换List&lt;对象&gt;列出&lt; T&gt;。

List<Entry> entries = wgList.Cast<Entry>().ToList()