我正在尝试用SQL数据库中的数据填充多维数组。因为没有像myarray.Add这样的函数,所以我发现了其他东西。但这不起作用!我正在使用C#.net
以下行给出了错误:arr [counter2] = {myDataReader [“ rating”],myDataReader [“ date”]};
public string[,] getData(int id)
{
string queryString = "SELECT rating, date FROM rating WHERE id = '" + id + "'";
SqlDataReader myDataReader = Database.sqlDataReader(queryString);
if (myDataReader.HasRows)
{
int counter = 0;
while (myDataReader.Read())
{
counter++;
}
string[,] arr = new string[counter, 2];
int counter2 = 0;
while (myDataReader.Read())
{
counter2++;
arr[counter2] = {myDataReader["rating"], myDataReader["date"]};
}
}
return arr;
}
有人可以帮我解决这个问题,或向我解释另一种(可能更好)做同一件事的方法吗?
最佳答案
这太复杂了。尝试这个:
public string[,] getData(int id)
{
string queryString = "SELECT rating, date FROM rating WHERE id = '" + id + "'";
List<string[]> data = new List<string[]>();
using(SqlDataReader myDataReader = Database.sqlDataReader(queryString))
while(myDataReader.Read())
data.Add(new int[] { (string)myDataReader["rating"], (string)myDataReader["date"] });
return data.ToArray();
}
另外,您实际上不应该连接您的SQL语句。