Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.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# 如何在c中按行读取数据表中的数据#_C#_Asp.net_C# 4.0 - Fatal编程技术网

C# 如何在c中按行读取数据表中的数据#

C# 如何在c中按行读取数据表中的数据#,c#,asp.net,c#-4.0,C#,Asp.net,C# 4.0,我正在用C#编写数据表。我想将数据从数据表逐行检索到数组中。但我有个例外。我想逐行读取数据 我试过了 System.Data.DataTable _dtDataFile = new System.Data.DataTable(); myCommand.Fill(_dtDataFile); string[] arr1 = new string[3]; _dtDataFile.Rows.CopyTo(arr1,0);

我正在用C#编写数据表。我想将数据从数据表逐行检索到数组中。但我有个例外。我想逐行读取数据

我试过了

        System.Data.DataTable _dtDataFile = new System.Data.DataTable();  
        myCommand.Fill(_dtDataFile);
        string[] arr1 = new string[3];
       _dtDataFile.Rows.CopyTo(arr1,0);
         Response.Write("DONE" + arr1[0]+ "<BR>" + "<BR>");
System.Data.DataTable\u dtDataFile=new System.Data.DataTable();
myCommand.Fill(_dtDataFile);
字符串[]arr1=新字符串[3];
_dtDataFile.Rows.CopyTo(arr1,0);
响应。写入(“完成”+arr1[0]+”
“+”
”;
我得到无效的强制转换异常

有谁能帮忙做这件事吗


谢谢。

您正在尝试将元素类型为
DataRow
DataTable.Rows
)的集合复制到字符串数组(
string[]arr1

如果您对数据表上的特定(字符串)列感兴趣,可以使用以下代码提取值:

string[] arr = _dtDataFile.Rows
  .Cast<DataRow>()
  .Select(r => Convert.ToString(r["SomeColumnName"]))
  .ToArray();
string[]arr=\u dtDataFile.Rows
.Cast()
.Select(r=>Convert.ToString(r[“SomeColumnName”]))
.ToArray();

我认为这些帖子给出了您正在寻找的答案:使用datareader而不是datasetTanky you。这是以列方式读取数据。你能不能修改一下,我将把一行的所有数据放到一个数组中。这需要对作为循环的所有行执行。