asp.net sql datareader按列循环

发布于 2025-01-04 02:01:58 字数 447 浏览 0 评论 0原文

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

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);
    }
}

我希望你明白了。谢谢

I have sql query in my asp.net webapp and the result is stored in datareader. Every row in datareader contains 10 columns. I want to fill table with these data. However, I have no idea, how to loop through columns in datareader. I need something like this:

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);
    }
}

I hope you got the point. Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

乖乖哒 2025-01-11 02:01:58

使用 SqlDataReaderFieldCount 属性:

while (vysledky.Read())
{
    // Iterate over each of the fields (columns) in the datareader's current record
    for (int i = 0; i < vysledky.FieldCount; i++)
    {
        var value = vysledky[i];

        TableCell cell = new TableCell(); 
        cell.Text = Convert.ToString(value); 
        row.Controls.Add(cell); 
    }
}

Use the FieldCount property of the SqlDataReader:

while (vysledky.Read())
{
    // Iterate over each of the fields (columns) in the datareader's current record
    for (int i = 0; i < vysledky.FieldCount; i++)
    {
        var value = vysledky[i];

        TableCell cell = new TableCell(); 
        cell.Text = Convert.ToString(value); 
        row.Controls.Add(cell); 
    }
}
往昔成烟 2025-01-11 02:01:58

您应该通过 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);

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

You should just do it through a 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);

At the point, your DataTable (dt) contains all of the data from your query.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文