使用label将每个表数据加载到html表

时间:2016-09-30 08:51:09

标签: c# asp.net sql-server sql-server-2008

如何将我的sql server上的每个数据加载到标签? 到目前为止,我只能加载1个数据。我无法加载所有这些数据,但我无法弄清楚如何开始。 这是我要加载的数据列表。

enter image description here

我目前的输出:enter image description here

这是我的代码:

  private string product_name { get; set; }
    private string product_type { get; set; }
    private string image_desc { get; set; }

    private void load_products()
    {
        con.Open();
        cmd = new SqlCommand(@"SELECT productName,productType,image_desc
                               FROM Products3",con);

        rdr = cmd.ExecuteReader();

        if(rdr.Read())
        {
            while (rdr.Read())
            {
                product_name = rdr["productName"].ToString();
                product_type = rdr["productType"].ToString();
                image_desc = rdr["image_desc"].ToString();

               // foreach()
                lbl_table.Text = @"<table class='table table-bordered'>
                                   <thead>
                                   <tr>
                                   <th>Product Name</th>
                                   <th>Product Type</th>
                                   <th>Image</th>
                                   </tr>
                                   </thead>
                                   <tbody>
                                   <tr>
                                   <td>"+product_name+@"</td>
                                   <td>"+product_type+@"</td>
                                   <td>"+image_desc+@"</td>
                                   </tr>
                                   </tbody>
                                   </table>";
            }
        }
        con.Close();
    }

我怎样才能获得所有表数据?我想我需要一些foreach但我不知道在哪里使用它。我想为每个产品创建单独的表。

1 个答案:

答案 0 :(得分:1)

在while循环之前定义标签文本,如下所示

lbl_table.Text = @"<table class='table table-bordered'>
                               <thead>
                               <tr>
                               <th>Product Name</th>
                               <th>Product Type</th>
                               <th>Image</th>
                               </tr>
                               </thead>
                               <tbody>";

现在在while循环中你需要为每个记录创建一个新行,如

While()
{
      ...
      lbl_table.Text += @"<tr>
      <td>"+product_name+@"</td>
      <td>"+product_type+@"</td>
      <td>"+image_desc+@"</td>
      </tr>";
}

完成while循环后添加标签以关闭表

lbl_table.Text += @"</tbody></table>";

多数民众赞成。