从数据库中显示表单

时间:2011-05-04 09:37:48

标签: c# .net asp.net sql-server-2005 ado.net

我使用asp.net和c#。我执行了一些数据库操作来显示表单中的数据,但我单独得到一些空白屏幕。如果我点击按钮,必须在表格中输入数据库中的值而不使用gridview或datagridview ..但它不起作用。

代码:

protected void Button1_Click(object sender, EventArgs e)
{
  string connString = "server=Si\\SQLEXPRESS2005;database=rags;Integrated Security=SSPI";
  string sql = @"select * from time";
  SqlConnection conn = new SqlConnection(connString);

  try
  {
     conn.Open();
     SqlDataAdapter da = new SqlDataAdapter(sql, conn);
     DataSet ds = new DataSet();    
     da.Fill(ds, "time");
     DataTable dt = ds.Tables["time"];
     foreach (DataRow row in dt.Rows)
     {
        foreach (DataColumn col in dt.Columns)
           Console.WriteLine(row[col]);
        Console.WriteLine("".PadLeft(20, '='));
     }
  }
  catch(Exception ex)
  {
     Console.WriteLine("Error: " + ex);
     Console.ReadLine();
  }
  finally
  {
     conn.Close();
  }
}

标记:

<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />

2 个答案:

答案 0 :(得分:1)

在ASP.NET中,请使用Response.Write()代替Console

答案 1 :(得分:0)

您无法在ASP.NET应用程序中使用System.Console

下一步:

标记:

<asp:Table runat="server" ID="table" />

代码:

 using System.Web.UI.WebControls;

 foreach (DataRow row in dt.Rows)
 {
    var tableRow = new TableRow();
    foreach (DataColumn col in dt.Columns)
    {
       var tableCell = new TableCell();
       tableCell.Text = row[col];
       tableRow.Cells.Add(tableCell);
    }
    table.Rows.Add(tableRow);
 }

无论如何,您的数据库访问代码应如下所示:

try
{
    string connString = ...
    string sql = ...

    using (DataTable dt = new DataTable()) // not DataSet if you a single database table
    {
        using (SqlConnection conn = new SqlConnection(connString))
        using (SqlDataAdapter da = new SqlDataAdapter(sql, conn))
        {
            conn.Open();
            da.Fill(table);
        }

        foreach (DataRow row in dt.Rows)
        {
            // do stuff
        }    
    }
}
catch (SqlException ex)
{
    // do stuff
}

  

所有wat实现IDisposable,应该被处置。