【发布时间】:2011-06-12 10:17:07
【问题描述】:
给定List<T> 类型的通用列表,我如何找到T 类型?
我想如果列表已填满,我可以选择 listInstance[0].GetType(),但这似乎有点骇人听闻。
编辑:
对于上下文,我想使用基于对象属性的列填充 DataTable。如果对象属性是通用列表,我想为列表存储的对象的每个属性添加一列。稍后我将扁平化数据结构以适应 DataRow。
我不想使用列表中第一个对象的类型的原因是因为不能保证每个实例都会填充列表。有些会,有些不会,但我仍然需要提前所有的列。
【问题讨论】:
-
是的,至少在你的情况下是这样。如果您使用的是泛型集合,则不应将其类型转换为 Array eigther object 或 object[] ,反之亦然。继续使用打字版本。 T.
标签: c# .net generics reflection gettype