我正在尝试运行下面提到的一段代码,但是在执行后会抛出一个错误"索引超出了数组的范围"。我无法追查这个问题,任何线索都会非常感激。
Data = new objData[ds.Tables[0].Rows.Count];
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
Data[i] = new objData();
if (ds.Tables[0].Rows[i]["VALUE"] != DBNull.Value)
Data[i].Value = float.Parse(ds.Tables[0].Rows[i]["VALUE"].ToString());
if (ds.Tables[0].Rows[i]["DATE"] != DBNull.Value)
Data[i].Date = Convert.ToDateTime(ds.Tables[0].Rows[i]["DATE"].ToString());
}
ds.Dispose();
答案 0 :(得分:1)
问题在于数据阵列。在这里,您只是将新的objData分配给未声明的Data [i]引用。您可能应该将数据数组声明为
objData[] Data=new objData[ds.Tables[0].Rows.Count]