掃描二維碼關注

首頁 APP開(kāi)發小(xiǎo)程序開(kāi)發 微信公衆号 網站建設 營銷推廣 經典案列 産品服務 關于我們

“學習(xí)不僅是掌握知識”

向書(shū)本學習(xí),還要向實踐學習(xí)、向生活學習(xí)。消化已有(yǒu)知識,
而且要力求有(yǒu)所發現、有(yǒu)所發明(míng)、有(yǒu)所創造

ASP.NET 2.0 中的(de)數據源控件(jiàn)

2019/3/14 8:48:36

ASP.NET 2.0 中的(de)數據源控件(jiàn)

ASP.NET 2.0 引入了一系列可(kě)以改善數據訪問的(de)新工(gōng)具,包括幾個(gè)數據源和(hé)數據綁定控件(jiàn)。新增種類的(de)數據源控件(jiàn)可(kě)以消除 ASP.NET 1.x 中要求的(de)大(dà)量重複性代碼。例如(rú),您可(kě)以很容易地(dì)将 SQL 語句或存儲過程與數據源控件(jiàn)相(xiàng)關聯,并且将它們綁定到(dào)數據綁定控件(jiàn)。更令人(rén)感到(dào)印象深刻的(de)是,通過 ObjectDataSource 控件(jiàn)可(kě)以簡化開(kāi)發和(hé)減少(shǎo)代碼,并且仍然可(kě)以在 n 層體系結構的(de)不同層中抽象業(yè)務和(hé)數據訪問邏輯。

在 .NET 問世以前,用(yòng)傳統的(de) ASP 生成數據網格通常需要編寫大(dà)量的(de)代碼,以便在遍曆 ADO 記錄集的(de)同時即時生成 HTML 表。ASP.NET 1.x 通過允許您将基于 XML 的(de) DataSet 綁定到(dào) ASP.NET DataGrid 控件(jiàn),從而使該類型的(de)開(kāi)發變得更加容易。這就減少(shǎo)了生成網格所必需的(de)代碼。但(dàn)是,傳統的(de) ASP 和(hé) ASP.NET 1.x 都(dōu)要求代碼實現分(fēn)頁、排序、編輯和(hé)行(xíng)選擇功能(néng)。通過 ASP.NET 2.0 中的(de)改進功能(néng),可(kě)以顯著減少(shǎo)這些代碼的(de)數量,以産生帶有(yǒu)完整分(fēn)頁、排序和(hé)編輯功能(néng)并填充了數據的(de)網格。

在這一期的(de) Data Points 中,我将首先演示通過 ASP.NET 2.0 并使用(yòng) SqlDataSource 和(hé)一些新的(de)數據綁定控件(jiàn)開(kāi)發 Web 應用(yòng)程序是多麽容易。請注意,我在此使用(yòng)的(de)是 Beta 1 版本。

大(dà)多數企業(yè)應用(yòng)程序都(dōu)是在多層體系結構之上(shàng)生成的(de),該體系結構有(yǒu)一個(gè)用(yòng)于存放(fàng)業(yè)務邏輯的(de)中間層,以及一個(gè)使用(yòng)一個(gè)或多個(gè)後端數據庫的(de)數據訪問層。我将討(tǎo)論 ObjectDataSource 可(kě)以多麽理(lǐ)想地(dì)與現有(yǒu)的(de)多層組件(jiàn)集成。通過将 ObjectDataSource 控件(jiàn)鏈接到(dào)業(yè)務對象,您可(kě)以充分(fēn)利用(yòng)現有(yǒu)的(de)多層體系結構來生成完善的(de) Web UI,并且能(néng)夠顯著減少(shǎo)代碼。 ObjectDataSource 控件(jiàn)還包含一些特殊的(de)屬性,使您可(kě)以綁定到(dào) ASP.NET 2.0 和(hé) ADO.NET 2.0 中新近增強的(de)強類型 DataSet 和(hé)數據組件(jiàn)。 ASP.NET 2.0 中的(de)其他(tā)新功能(néng)和(hé)改進包括新增的(de)雙向綁定表達式、增強的(de)緩存,以及幾個(gè)新增的(de)可(kě)以數據綁定到(dào)新的(de)數據源控件(jiàn)的(de) ASP.NET 2.0 控件(jiàn)

數據綁定控件(jiàn)


要使用(yòng)數據源控件(jiàn),必須具有(yǒu)一個(gè)用(yòng)來将它們綁定到(dào)的(de)數據綁定控件(jiàn)。在 ASP.NET 2.0 中有(yǒu)幾個(gè)新的(de)數據綁定控件(jiàn),包括 GridView、DetailsView 和(hé) FormView 控件(jiàn)。如(rú)果您喜歡 ASP.NET 1.x DataGrid 控件(jiàn),那麽您也(yě)會(huì)喜歡 ASP.NET 2.0 GridView 控件(jiàn)。GridView 在本質上(shàng)類似于 DataGrid,因爲它可(kě)以綁定到(dào)新的(de)數據源控件(jiàn),并且可(kě)以用(yòng)來實現排序、編輯和(hé)分(fēn)頁 — 它們需要的(de)代碼都(dōu)比 DataGrid 少(shǎo)得多(有(yǒu)關 GridView 的(de)詳細信息,請參閱 Dino Esposito 在 MSDN®Magazine 的(de) 2004 年 8 月(yuè)刊中發表的(de)文(wén)章(zhāng))。

要将 GridView 綁定到(dào)數據源控件(jiàn),需要将 GridView 的(de) DataSourceID 屬性設置爲數據源控件(jiàn)的(de) ID。還可(kě)以設置 GridView 的(de)其他(tā)幾個(gè)屬性來增強外觀和(hé)用(yòng)戶交互(我将在稍後的(de)示例中加以演示):

<asp:GridView ID="gvwOrders" Runat="server"
    DataSourceID="sdsOrdersDataSource"
    AutoGenerateColumns="True">
其他(tā)控件(jiàn)(例如(rú),DropDownList)也(yě)可(kě)以綁定到(dào)數據源控件(jiàn)。例如(rú),DropDownList 控件(jiàn)可(kě)以綁定到(dào)檢索雇員列表的(de) SqlDataSource 控件(jiàn)。雇員的(de)全名可(kě)以顯示在 DropDownList 中,而 EmployeeID 可(kě)以作爲控件(jiàn)的(de)基礎數據值字段綁定到(dào)該控件(jiàn)。以下示例定義了一個(gè) DropDownList,它将顯示可(kě)供選擇的(de)客戶名稱的(de)列表。客戶數據被綁定到(dào)一個(gè)名爲 sdsCustomerDataSource 的(de) SqlDataSource 控件(jiàn),該控件(jiàn)可(kě)獲得客戶的(de) CompanyName 和(hé) CustomerID 字段的(de)列表:

<asp:DropDownList ID="ddlCustomers" Runat="server" AutoPostBack="True"
    DataSourceID="sdsCustomersDataSource"
    DataTextField="CompanyName"
    DataValueField="CustomerID">
</asp:DropDownList>

在 ASP.NET 2.0 中,将控件(jiàn)綁定到(dào)數據源控件(jiàn)非常簡單,并且不需要任何處于代碼隐藏中的(de)代碼。但(dàn)是,如(rú)果您願意,仍然可(kě)以編寫代碼以顯式綁定到(dào)控件(jiàn)。實際上(shàng),數據綁定控件(jiàn)的(de)數據源和(hé) DataMember 屬性與 ASP.NET 1.x 相(xiàng)比已經得到(dào)了改進。


深圳市南山區南山街(jiē)道南海(hǎi)大(dà)道西(xī)桂廟路(lù)北陽光(guāng)華藝大(dà)廈1棟4F、4G-04

咨詢電話(huà):136 8237 6272
大(dà)客戶咨詢:139 0290 5075
業(yè)務QQ:195006118
技術(shù)QQ:179981967

更多可(kě)以了解的(de)信息

客戶案列
新聞資訊
資質榮譽
團隊風采
項目進度查詢

售前QQ咨詢
QQ溝通 項目QQ溝通

精銳軟件(jiàn)

Copyright© 2018-2023 深圳市無窮大軟件技術有限公司 All Rights Reserved. 京ICP證000000号 公安備案号:粵公網安備44030502009460号 深圳市市场监督管理局企业主体身份公示