asp.net sql datareader按列循环

时间:2012-02-09 17:51:45

标签: c# asp.net sqldatareader

我的asp.net webapp中有sql查询,结果存储在datareader中。 datareader中的每一行包含10列。我想用这些数据填充表格。但是,我不知道如何遍历datareader中的列。我需要这样的东西:

while (vysledky.Read())
{
    TableRow row = new TableRow();
    tab.Controls.Add(row);
    foreach (column in ((datareader(row)))  //it is not real code
    {
      TableCell cell = new TableCell();
      cell.Text = datareader(row).content;
      row.Controls.Add(cell);
    }
}

我希望你明白这一点。感谢

2 个答案:

答案 0 :(得分:15)

使用FieldCount的{​​{1}}属性:

SqlDataReader

答案 1 :(得分:2)

您应该通过SqlDataAdapter

来完成
SqlConnection Conn = new SqlConnection(YourConnectionString);
SqlCommand YourSqlCommand = new SqlCommand();
YourSqlCommand.Connection = Conn;
YourSqlCommand.CommandText = "select * from yourtable";

DataTable dt = new DataTable();

SqlDataAdapter sda = new SqlDataAdapter(YourSqlCommand);

sda.Fill(dt);

此时,您的DataTabledt)包含查询中的所有数据。