C# 如何在c语言中将数据表转换为数组?

C# 如何在c语言中将数据表转换为数组?,c#,C#,我想将datatable1转换为C中的多维数组: 我想把它转换成[[jim,23],[ard,22],[tom,30]]。 有人能帮我吗?谢谢。应该是: string[,] str = new string[YourDataTable.Rows.Count, 2]; int i = 0; foreach (DataRow row in YourDataTable.Rows) { if (i < YourDataTable.Rows.Count) { st

我想将datatable1转换为C中的多维数组:

我想把它转换成[[jim,23],[ard,22],[tom,30]]。 有人能帮我吗?谢谢。

应该是:

string[,] str = new string[YourDataTable.Rows.Count, 2]; 

int i = 0;
foreach (DataRow row in YourDataTable.Rows)
{
    if (i < YourDataTable.Rows.Count)
    {
        str[i, 1] = row["name"].ToString();
        str[i, 2] = row["age"].ToString();
        i++;
    }
}
而DataToStringobject[]]数据是

给予


大小为2x3的阵列欢迎使用SO。我建议你先阅读,然后再阅读,作为一个介绍,来了解SO是如何工作的,以及如何有效地提问。这是一种方法。请接受我的投票。看来,提问者并不欣赏一个人花在回答问题上的时间。
string[,] str = new string[YourDataTable.Rows.Count, 2]; 

int i = 0;
foreach (DataRow row in YourDataTable.Rows)
{
    if (i < YourDataTable.Rows.Count)
    {
        str[i, 1] = row["name"].ToString();
        str[i, 2] = row["age"].ToString();
        i++;
    }
}
var datatable1 = CreateDataTable(); // or the way you populate the table
var data = datatable1.Rows
                     .Cast<DataRow>()
                     .Select(row => row.ItemArray)
                     .ToArray();
Console.WriteLine(DataToString(data));
DataTable CreateDataTable()
{
    var dt = new DataTable("tbl");
    dt.Columns.AddRange(new DataColumn[]
    {
        new DataColumn("Name", typeof(string)),
        new DataColumn("Age", typeof(int))
    });
    dt.Rows.Add("Jim", 23);
    dt.Rows.Add("Ard", 22);
    dt.Rows.Add("Tom", 30);
    return dt;
}
string DataToString(object[][] data) =>
    $"[{string.Join(", ", data.Select(i => $"[{string.Join(", ", i)}]"))}]";
[[Jim, 23], [Ard, 22], [Tom, 30]]