2016-04-23 27 views
2

Hallo Ich versuche, Daten aus der Datenbank zu lesen, dann legen Sie das in eine Tabelle. Zeilen in der Tabelle werden automatisch erstellt, abhängig davon, wie viele Zeilen in der Datenbank vorhanden sind. Ich habe dies in PHP mit mysql_fetch_array getan, aber es scheint nicht in asp.net Webforms zu tun. Meine Idee ist, diese Abfrage zu verwenden, um die Informationen zu erhalten und in den Etiketten in der Server-Seite zu speichern und eine Tabelle dort mit columns Daten zu schaffen, die unter Verwendung der Aufkleber gefüllt werden. Hier ist mein Code in der 'page_load' Danke:mysql_fetch_array in asp.net Webforms

<table> 
     <tr> 
      <th>Surgery</th> 
      <th>PatientID</th> 
      <th>Location</th> 
     </tr> 
     <tr> 
      <td> 

     <asp:Label ID="Label1" runat="server"></asp:Label> 
     </td> 
     <td> 
     <asp:Label ID="Label2" runat="server"></asp:Label> 
     </td> 
     <td> 

     <asp:Label ID="Label3" runat="server"></asp:Label> 
     </td> 
     </tr> 
     </table> 



      string query= "select surgery,patientID, location from details"; 
      SqlCommand result= new SqlCommand(query, conn); 
      result.ExecuteNonQuery(); 
      using (SqlDataReader getInfo= result.ExecuteReader()) 


       while (getInfo.Read()) 
       { 
        Label1.Text = getInfo["surgery"].ToString(); 
        Label2.Text = getInfo["patientID"].ToString(); 
        Label3.Text = getInfo["location"].ToString(); 


       } 

SqlCommand cmd = new SqlCommand ("wählen Chirurgie, Patienten_ID, Standort von Details", conn); SqlDataAdapter sda = neuer SqlDataAdapter (cmd); DataTable dt = neue DataTable(); sda.Fill (dt); GridView1.DataSource = dt; GridView1.DataBind(); conn.Close();

+0

Verwenden 'GridView'. Mögliches Duplikat von [ASP.NET lokale SQL Server-Datenbank C# Gridview-Datenbindung Visual Studio 2013] (http://stackoverflow.com/questions/26817272/asp-net-local-sql-server-database-c-sharp-gridview- Data-Binding-Visual-Studio-20) – Shaharyar

+0

Bereits versucht, das scheint nicht zu funktionieren? –

+0

Die Anforderungen können von GridView einfach erfüllt werden, haben Sie das versucht? Wenn ja, bitte teilen Sie diesen Code. – Shaharyar

Antwort

1

GridView in Ihrem aspx Code hinzufügen:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false"> 
    <Columns> 
     <asp:BoundField HeaderText="Surgery" DataField="surgery" /> 
     <asp:BoundField HeaderText="PatientID" DataField="patientID" /> 
     <asp:BoundField HeaderText="Location" DataField="location" /> 
    </Columns> 
</asp:GridView> 

Sie C# -Code ist in Ordnung, schließen Sie einfach die Verbindung, bevor Gridview Bindung:

SqlCommand cmd = new SqlCommand("select surgery, PatientID, location from details", conn); 
SqlDataAdapter sda = new SqlDataAdapter(cmd); 
DataTable dt = new DataTable(); 
sda.Fill(dt); 

conn.Close(); 

GridView1.DataSource = dt; 
GridView1.DataBind(); 
+0

Danke :) schätze die Hilfe. zu stylen wäre es dasselbe wie normale Tische? hab ich recht? –

+0

Ja, schreibe einfach eine CSS-Klasse und setze ihre Eigenschaft 'cssClass =" youCSSclass "' – Shaharyar

+0

danke. Die letzte Frage besagt, dass ich eine Löschtaste neben jeder Zeile hinzufügen möchte. Wie würde ich die ID über den Server weitergeben? Ich habe dies in PHP getan und würde den gleichen Ansatz verwenden. Fügen Sie extra colunm hinzu und ändern Sie das DataField in aspx zum 'button_click' und setzen Sie den Code in diese Funktion in C#? Verwenden Sie% button_click%, wenn ich die Variable in der aspx-Seite verwenden möchte. Danke –