C# 数据表到数组的数组
我有一个由动态行组成的C# 数据表到数组的数组,c#,arrays,datatable,C#,Arrays,Datatable,我有一个由动态行组成的DataTable: no | cid | wait | prio -------------------------------- 1 | 1234 | 0:57 | 0 2 | 54785 | 0:44 | 0 3 | 74125 | 0:22 | 0 我想从中创建一个数组数组,其中包含单个数组中每一行的信息。类似的内容可能会按预期工作: List<object> list = new
DataTable
:
no | cid | wait | prio
--------------------------------
1 | 1234 | 0:57 | 0
2 | 54785 | 0:44 | 0
3 | 74125 | 0:22 | 0
我想从中创建一个数组数组,其中包含单个数组中每一行的信息。类似的内容可能会按预期工作:
List<object> list = new List<object>();
foreach (object row in DataGridView.Rows)
{
List<object> newList = new List<object>();
list.Add(newList);
foreach (object columns in row)
{
newList.Add(columns.DataBoundItem);
}
}
List List=新列表();
foreach(DataGridView.Rows中的对象行)
{
List newList=新列表();
list.Add(newList);
foreach(行中的对象列)
{
添加(columns.DataBoundItem);
}
}
类似的东西可能会按预期工作:
List<object> list = new List<object>();
foreach (object row in DataGridView.Rows)
{
List<object> newList = new List<object>();
list.Add(newList);
foreach (object columns in row)
{
newList.Add(columns.DataBoundItem);
}
}
List List=新列表();
foreach(DataGridView.Rows中的对象行)
{
List newList=新列表();
list.Add(newList);
foreach(行中的对象列)
{
添加(columns.DataBoundItem);
}
}
尽管您不需要这个
var arr = dataTable.Rows.Cast<DataRow>().Select(r => r.ItemArray).ToArray();
var arr=dataTable.Rows.Cast().Select(r=>r.ItemArray.ToArray();
尽管您不需要这个
var arr = dataTable.Rows.Cast<DataRow>().Select(r => r.ItemArray).ToArray();
var arr=dataTable.Rows.Cast().Select(r=>r.ItemArray.ToArray();
尽管我对其他用户回答您关于数组的直接问题表示赞赏。我认为你让这件事变得比你需要的更困难了
yourDataTable.Rows[rowIndex]["no"]
已是包含“否”列中所有值的数组
已是包含“cid”列中所有值的数组
等等。。。等等
您可以通过在行中循环访问数据,或者直接调用一个行来代替上面显示的rowIndex
,并将列中的值分配给其他变量来访问数据
如果你真的想得到数组(你已经有了),那么忽略这一点,参考其他答案。尽管我欢迎其他用户回答你关于数组的直接问题。我认为你让这件事变得比你需要的更困难了
yourDataTable.Rows[rowIndex]["no"]
已是包含“否”列中所有值的数组
已是包含“cid”列中所有值的数组
等等。。。等等
您可以通过在行中循环访问数据,或者直接调用一个行来代替上面显示的rowIndex
,并将列中的值分配给其他变量来访问数据
如果你真的想得到数组的数组(你已经有了数组),那么忽略这一点,参考其他答案。没有必要为数据表创建数组。没有必要为数据表创建数组。数据表的实现是数组。
Rows
属性是外部数组,然后每行都有一个ItemArray
,它是一个对象[]
该行的值。您能为您的语句编写代码吗?因为我在.Net中很新。这是Microsoft SQL Server吗?@MichaelPerrenoud一旦它位于数据表中,数据就来自何处,这无关紧要……您的数据表已经拥有了您想要的一切,创建单独的数组只会给您的过程增加痛苦。我建议研究“从DataTables访问数据”。DataTable的实现是数组的数组。Rows
属性是外部数组,然后每行都有一个ItemArray
,它是一个对象[]
该行的值。您能为您的语句编写代码吗?因为我在.Net中很新。这是Microsoft SQL Server吗?@MichaelPerrenoud一旦它位于数据表中,数据就来自何处,这无关紧要……您的数据表已经拥有了您想要的一切,创建单独的数组只会给您的过程增加痛苦。我建议研究“从数据表访问数据”。尽管我在这里只是假设,OP可能会将此数据发送到另一个程序集(即非托管C或类似的程序集),并且它只支持数组。我考虑过这一点,但也觉得他可能不知道如何直接访问数据,所以我觉得值得一提。@MichaelPerrenoud虽然这是一种可能性,嘿,现在,请不要在评论我的答案时争论;)虽然我只是在这里假设,OP可能会将此数据发送到另一个程序集(即非托管C或类似的程序集),并且它只支持数组。我考虑过这一点,但也觉得他可能不知道如何直接访问数据,所以认为值得一提。@MichaelPerrenoud虽然这是一种可能性,嘿,请不要在评论我的答案时开始争论;)