2016-06-23 17 views
1

Das ist mein Tisch in meiner ASPX-Datei:ASP.NET C# Wie Tabelle aus der Datenbank füllen

 <asp:Table ID="Tournament" runat="server"> 
      <asp:TableHeaderRow> 
       <asp:TableHeaderCell>Name</asp:TableHeaderCell> 
       <asp:TableHeaderCell>Start date</asp:TableHeaderCell> 
      </asp:TableHeaderRow> 
     </asp:Table> 

Dies ist, wie ich die Daten aus meiner Datenbank erhalten:

 string conStr = "..."; 
     SqlConnection sqlConnection = new SqlConnection(conStr); 
     string sqlString = "SELECT name, startdate FROM table WHERE startdate > @end_date AND name = ..."; 
     IDbCommand idbCommand = new SqlCommand(sqlString, sqlConnection); 
     IDbDataParameter parameter = idbCommand.CreateParameter(); 
     parameter.ParameterName = "@end_date"; 
     parameter.Value = DateTime.Now; 
     idbCommand.Parameters.Add(parameter); 
     sqlConnection.Open(); 

Wie Ich fülle meine asp: Tabelle mit den Daten aus meinen SQL-Datenbanken.

+1

Verwenden 'GridView' Kontrolle statt. – vivek

Antwort

2

Sie sollten eine Data wie ein asp:GridView anstelle eines asp:Table verwenden. Im Fall einer asp:Table müssen Sie die gesamten Daten zu Ihren Zeilen/Spalten hinzufügen. Im Falle eines asp:GridView ist es nur eine Datenbindung.

cs:

string query = "SELECT name, startdate FROM table WHERE startdate > @end_date AND name = ..."; 
using (SqlConnection myConnection = new SqlConnection(ConnectionString)) 
{ 
    using (SqlCommand cmd = new SqlCommand(query, myConnection)) 
    { 
     myConnection.Open(); 
     SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection); 
     DataTable dt = new DataTable(); 
     dt.Load(dr); 
     Tournament.DataSource = dt; 
     Tournament.DataBind(); 
    } 
} 

aspx:

<asp:GridView ID="Tournament" runat="server"></asp:GridView> 

0

Verwendung auf diese Weise

string conStr = "..."; 
      SqlConnection sqlConnection = new SqlConnection(conStr); 
      string sqlString = "SELECT name, startdate FROM table WHERE startdate > @end_date AND name = ..."; 
      SqlDataAdapter da = new SqlDataAdapter(sqlString, sqlConnection); 
      da.SelectCommand.Parameters.AddWithValue("@end_date", DateTime.Now); 
      DataTable dt = new DataTable(); 
      da.Fill(dt); 

      Tournament.DataSource = dt; 
      Tournament.DataBind(); 
     } 
Verwandte Themen