【发布时间】:2017-08-11 04:11:00
【问题描述】:
我正在使用 SqlDataReader 读取自定义类型的集合,但我得到的只是重复的 DataTable 的最后一行,而不是完整的信息表。我们将不胜感激。
using (connection)
{
using (SqlCommand command = new SqlCommand(query, connection))
{
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
lineData.Column1 = reader.GetValue(0).ToString();
lineData.Column2 = reader.GetValue(1).ToString();
lineData.Column3 = reader.GetValue(2).ToString();
lineData.Column4 = reader.GetValue(3).ToString();
lineData.Column5 = reader.GetValue(4).ToString();
lineData.Column6 = reader.GetValue(5).ToString();
lineData.Column7 = reader.GetValue(6).ToString();
lineData.Column8 = reader.GetValue(7).ToString();
columnData.Add(lineData);
}
}
}
}
foreach (var item in columnData)
{
Label.Text += item.Column1.ToString() + item.Column2.ToString() + item.Column3.ToString() + item.Column7.ToString();
}
【问题讨论】:
-
代码似乎没问题...您可以上传您的结果(例如屏幕截图)。你在哪里声明
columnData以及为什么在循环之外?
标签: c# sql while-loop sqldatareader