ASP.NET - databaseverbinding
- Vorige pagina WebForms DataList
- Volgende pagina WebForms Master Page
ADO.NET is ook een onderdeel van het .NET Framework.
De taak van ADO.NET is om toegang tot gegevens te verwerken. Met ADO.NET kunt u databases manipuleren.
Voorbeeld
Wat is ADO.NET?
- ADO.NET is een onderdeel van het .NET Framework
- ADO.NET bestaat uit een reeks klassen die zijn ontworpen om data access te beheren
- ADO.NET is volledig gebaseerd op XML
- ADO.NET heeft geen Recordset-object, wat verschilt van ADO
Maak databaseverbinding aan
We zullen de eerder gebruikte Northwind-database gebruiken.
Eerst importeren we de naamruimte "System.Data.OleDb". We hebben deze naamruimte nodig om Microsoft Access en andere OLE DB-databankproviders te kunnen gebruiken. We zullen in de Page_Load-subroep een verbinding met deze database maken. We hebben een dbconn-variabele gemaakt en hebben een nieuwe OleDbConnection-klasse toegewezen aan deze variabele, die een connectiestrings bevat die de locatie van OLE DB en de database aangeeft. Vervolgens openen we deze databaseverbinding:
<%@ Import Namespace="System.Data.OleDb" %> <script runat="server"> sub Page_Load dim dbconn dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; data source=" & server.mappath("northwind.mdb")") dbconn.Open() end sub </script>
Opmerking:Deze connectiestrings moeten zonder regelinbreuken zijn!
Maak databasecommando aan
Om te specificeren welke records we van de database moeten ophalen, zullen we een dbcomm-variabele maken en deze een nieuwe OleDbCommand-waarde toekennen. Deze OleDbCommand-klasse wordt gebruikt om SQL-queries voor database-tabellen uit te voeren:
<%@ Import Namespace="System.Data.OleDb" %> <script runat="server"> sub Page_Load dim dbconn,sql,dbcomm dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; data source=" & server.mappath("northwind.mdb")") dbconn.Open() sql="SELECT * FROM customers" dbcomm=New OleDbCommand(sql,dbconn) end sub </script>
Maak DataReader aan
De OleDbDataReader-klasse wordt gebruikt om een recordstroom uit de gegevensbron te lezen. Door de ExecuteReader-methode van het OleDbCommand-object aan te roepen, kan een DataReader worden gemaakt:
<%@ Import Namespace="System.Data.OleDb" %> <script runat="server"> sub Page_Load dim dbconn,sql,dbcomm,dbread dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; data source=" & server.mappath("northwind.mdb")") dbconn.Open() sql="SELECT * FROM customers" dbcomm=New OleDbCommand(sql,dbconn) dbread=dbcomm.ExecuteReader() end sub </script>
Binden aan Repeater-knop
Dan, binden we deze DataReader aan een Repeater-knop:
<%@ Import Namespace="System.Data.OleDb" %> <script runat="server"> sub Page_Load dim dbconn,sql,dbcomm,dbread dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; data source=" & server.mappath("northwind.mdb")") dbconn.Open() sql="SELECT * FROM customers" dbcomm=New OleDbCommand(sql,dbconn) dbread=dbcomm.ExecuteReader() customers.DataSource=dbread customers.DataBind() dbread.Close() dbconn.Close() end sub </script> <html> <body> <form runat="server"> <asp:Repeater id="customers" runat="server"> <HeaderTemplate> <table border="1" width="100%"> <tr> <th>Companyname</th> <th>Contactname</th> <th>Address</th> <th>City</th> </tr> </HeaderTemplate> <ItemTemplate> <tr> <td><%#Container.DataItem("companyname")%></td> <td><%#Container.DataItem("contactname")%></td> <td><%#Container.DataItem("address")%></td> <td><%#Container.DataItem("city")%></td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> </form> </body> </html>
Sluit de databaseverbinding
Vergeet altijd om de DataReader en de databaseverbinding te sluiten nadat je de database hebt gebruikt:
dbread.Close() dbconn.Close()
- Vorige pagina WebForms DataList
- Volgende pagina WebForms Master Page