我有一个表我正在查询,然后尝试使用Linq将itemArray转换为字符串数组。
我正在使用以下
Dim ObjectMapping As DataTable = ds.Tables(0)
Dim index As Integer = 0
Dim query = From ObjectMap In ObjectMapping.AsEnumerable() Select ObjectMap
Dim test = dr.ItemArray.Cast(Of String)().ToArray()
该表有13列,ItemArray包含
(0) - "string"
(1) - double
(2) - "string"
(3) - "string"
(4) - DBNull
(5) - DBNull
(6) - DBNull
(7) - DBNull
(8) - DBNull
(9) - DBNull
(10) - DBNull
(11) - DBNull
(12) - DBNull
当我尝试将ItemArray转换为String数组时,由于第二列包含Double值而不是String,它会死掉。有没有办法在转换整个数组之前转换此列?或者解决这个问题的唯一方法是更改表的架构吗?
答案 0 :(得分:1)
不,你不能施放,但你可以转换:
Dim test = dr.ItemArray.Select(Function (o) o.ToString()).ToArray()