ASP.NET Web Forms 数据库连接

ASP.NET Web Forms 使用 ADO.NET 连接和访问数据库

ADO.NET 也是 .NET 框架的组成部分

ADO.NET 用于处理数据访问

通过 ADO.NET,我们可以操作数据库

范例

  1. 数据库连接 - 绑定到 DataList 控件

  2. 数据库连接 - 绑定到 Repeater 控件

什么是 ADO.NET ?

  1. ADO.NET 是 .NET 框架的组成部分
  2. ADO.NET 由一系列用于处理数据访问的类组成
  3. ADO.NET 完全基于 XML
  4. ADO.NET 没有 Recordset 对象,这一点与 ADO 不同

创建数据库连接

在本章节的范例中,我们将使用 Northwind 数据库

首先,导入 "System.Data.OleDb" 命名空间

我们需要这个命名空间来操作 Microsoft Access 和其他 OLE DB 数据库提供商

我们将在 Page_Load 子例程中创建这个数据库的连接

我们创建一个 dbconn 变量,并为其赋值一个新的 OleDbConnection 类,这个类带有指示 OLE DB 提供商和数据库位置的连接字符串

然后打开数据库连接

<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
sub Page_Load
    dim dbconndbconn = New  OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("northwind.mdb"))
    dbconn.Open()
end sub
</script>

注意,这个连接字符串必须是没有折行的连续字符串

创建数据库命令

为了指定需从数据库取回的记录,我们将创建一个 dbcomm 变量,并为其赋值一个新的 OleDbCommand 类

这个 OleDbCommand 类用于发出针对数据库表的 SQL 查询

<%@ 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>

创建 DataReader

OleDbDataReader 类用于从数据源中读取记录流

DataReader 是通过调用 OleDbCommand 对象的 ExecuteReader 方法来创建的

<%@ 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>

绑定到 Repeater 控件

然后,我们绑定 DataReader 到 Repeater 控件

<%@ 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>
<!DOCTYPE html>
<meta charset="utf-8" />
<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>

运行范例 »

关闭数据库连接

如果不再需要访问数据库,请记得关闭 DataReader 和数据库连接

dbread.Close()
dbconn.Close()

ASP.NET 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2018 简单教程 twle.cn All Rights Reserved.