在LINQ查询中使用动态数据类型

时间:2013-02-12 18:41:41

标签: c# .net linq datatable dataset

如下所示的Linq查询有效:

from row in myDataTable.AsEnumerable() select row.Field<string>("myDataColumn")

现在尝试使其适用于任何列数据类型(而不仅仅是string)。尝试以下方法:

from row in myDataTable.AsEnumerable() select row.Field<myDataTable.Columns["myDataColumn"].DataType>("myDataColumn")

但它没有用。

那么有没有办法在这个特定的Linq查询中使数据类型动态化?

1 个答案:

答案 0 :(得分:4)

Field属性用于在编译时知道类型时获取值。如果您不只是使用索引器:

from row in myDataTable.AsEnumerable() select row["myDataColumn"];

这会将值返回为object