Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从数据表中提取double列_C#_.net_Linq - Fatal编程技术网

C# 从数据表中提取double列

C# 从数据表中提取double列,c#,.net,linq,C#,.net,Linq,有没有更简单的方法来实现以下目标 var obj = from row in table.AsEnumerable() select row["DOUBLEVALUE"]; double[] a = Array.ConvertAll<object, double>(obj.ToArray(), o => (double)o); var obj=来自表中的行。AsEnumerable() 选择行[“DOUBLEVALUE”]; double[]a=Arra

有没有更简单的方法来实现以下目标

var obj = from row in table.AsEnumerable()
          select row["DOUBLEVALUE"];

double[] a = Array.ConvertAll<object, double>(obj.ToArray(), o => (double)o);
var obj=来自表中的行。AsEnumerable()
选择行[“DOUBLEVALUE”];
double[]a=Array.ConvertAll(obj.ToArray(),o=>(double)o);
我正在从
数据表中提取一列,并将该列存储在
double
数组中

假设
table
是一个
DataTable
,其中包含一个名为“DOUBLEVALUE”的列,类型为
typeof(Double)

如果您的行中该列的值可能为空,请添加
where行[“DOUBLEVALUE”]!=select之前为null。

var obj=(来自表中的行。AsEnumerable()
var obj = (from row in table.AsEnumerable()
      select row.Field<double>("DOUBLEVALUE")).ToArray();
选择row.Field(“DOUBLEVALUE”)).ToArray();
当然,
.ToArray()
位是可选的;如果没有
ToArray()
,您将得到一个可枚举的双精度序列,而不是数组-这取决于您需要读取一次还是两次。如果数据中有空值,请改用

(请注意,这需要一个对System.Data.DataSetExtensions.dll的引用和一个“using System.Data;”语句-这将使用
字段(…)
扩展方法)

var obj = (from row in table.AsEnumerable()
      select row.Field<double>("DOUBLEVALUE")).ToArray();