[MySql查询到C#中的二维数组

问题描述 投票:0回答:1

我想用阅读器从mysql查询中读取数据,并将其转换为二维数组。怎么做?我尝试使用数据表,但在最后一行给了我错误。

MySqlDataReader Reader = Command.ExecuteReader();
DataTable Result = new DataTable();
Result.Load(Reader);
Reader.Close();
return Result.AsEnumerable().Select(x => x.ItemArray).ToArray();

“无法将对象[] []转换为字符串[] []”。

EDIT:我用“ for”循环解决了这个问题,但是我不确定这是否是将mysql查询转换为二维数组的最佳方法,所以我仍在寻找您的帮助。

DataTable Result = new DataTable();
Result.Load(Command.ExecuteReader());

if (Result.Rows.Count > 0)
{
    object[][] Objects = Result.AsEnumerable().Select(x => x.ItemArray).ToArray();
    string[][] Texts = new string[Objects.Length][];
    for (int i = 0; i < Texts.Length; i++)
    {
        Texts[i] = new string[Objects[i].Length];
        for (int j = 0; j < Objects[i].Length; j++)
        {
            Texts[i][j] = Objects[i][j].ToString();
        }
    }
    return Texts;
}
else
{
    return null;
}
c# mysql arrays .net multidimensional-array
1个回答
0
投票

“ ToArray()”转换为Object类型的数组。您将不得不将该数组转换为String数组。希望对您有所帮助!

© www.soinside.com 2019 - 2024. All rights reserved.