如下所示的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查询中使数据类型动态化?
答案 0 :(得分:4)
Field
属性用于在编译时知道类型时获取值。如果您不只是使用索引器:
from row in myDataTable.AsEnumerable() select row["myDataColumn"];
这会将值返回为object
。