ASP.NET 数据库访问
ASP.NET 允许访问和使用以下数据源:
数据库(例如 Access、SQL Server、Oracle、MySQL)
XML文档
业务对象
Flat文件
ASP.NET 隐藏了数据访问的复杂过程,并提供了更高级别的类和对象,通过这些类和对象可以轻松访问数据。这些类隐藏了连接、数据检索、数据查询和数据操作的所有复杂编码。
ADO.NET 是在各种 ASP.NET 控件对象和后端数据源之间提供桥梁的技术。在本教程中,我们将简要介绍数据访问和处理数据。
检索和显示数据
在 ASP.NET 中检索和显示数据需要两种类型的数据控件:
数据源控件-它管理与数据的连接、数据的选择以及其他作业,例如数据的分页和缓存等。
数据视图控件-它绑定和显示数据并允许数据操作。
我们稍后会详细讨论数据绑定和数据源控件。在本节中,我们将在本章中使用 SqlDataSource 控件来访问数据和使用 GridView 控件来显示和操作数据。
我们还将使用 Access 数据库,其中包含有关市场上可用的 .Net 书籍的详细信息。我们的数据库名为 ASPDotNetStepByStep.mdb,我们将使用数据表 DotNetReferences。
该表包含以下列:ID、Title、AuthorFirstName、AuthorLastName、Topic 和 Publisher。
这是数据表的快照:
让我们直接行动起来,采取以下步骤:
(1) 创建一个网站并在 Web 表单上添加一个 SqlDataSourceControl。
(2) 点击配置数据源选项。
(3) 点击新建连接按钮建立与数据库的连接。
(4) 建立连接后,您可以将其保存以供进一步使用。下一步,您将被要求配置 select 语句:
(5) 选择列并单击下一步以完成步骤。观察 WHERE、ORDER BY 和 Advanced 按钮。这些按钮允许您提供 where 子句、order by 子句,并分别指定 SQL 的插入、更新和删除命令。这样,您就可以操作数据。
(6) 在窗体上添加一个 GridView 控件。选择数据源并使用 AutoFormat 选项格式化控件。
(7) 在此之后,格式化的 GridView 控件显示列标题,应用程序已准备好执行。
(8) 最后执行应用程序。
内容文件代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="dataaccess.aspx.cs"
Inherits="datacaching.WebForm1" %>
<!DOCTYPE html public "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>
Untitled Page
</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString= "<%$ ConnectionStrings:ASPDotNetStepByStepConnectionString%>"
ProviderName= "<%$ ConnectionStrings:
ASPDotNetStepByStepConnectionString.ProviderName %>"
SelectCommand="SELECT [Title], [AuthorLastName],
[AuthorFirstName], [Topic] FROM [DotNetReferences]">
</asp:SqlDataSource>
<asp:GridView ID="GridView1" runat="server"
AutoGenerateColumns="False" CellPadding="4"
DataSourceID="SqlDataSource1" ForeColor="#333333"
GridLines="None">
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<Columns>
<asp:BoundField DataField="Title" HeaderText="Title"
SortExpression="Title" />
<asp:BoundField DataField="AuthorLastName"
HeaderText="AuthorLastName" SortExpression="AuthorLastName" />
<asp:BoundField DataField="AuthorFirstName"
HeaderText="AuthorFirstName" SortExpression="AuthorFirstName" />
<asp:BoundField DataField="Topic"
HeaderText="Topic" SortExpression="Topic" />
</Columns>
<FooterStyle BackColor="#5D7B9D"
Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#284775"
ForeColor="White" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#E2DED6"
Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True"
ForeColor="White" />
<EditRowStyle BackColor="#999999" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
</asp:GridView>
</div>
</form>
</body>
</html>