日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
ASP.NET2.0數(shù)據(jù)教程:給數(shù)據(jù)訪問層添加參數(shù)化的方法

第三步:給數(shù)據(jù)訪問層添加參數(shù)化的方法

江油網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)公司從2013年創(chuàng)立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)公司

至此,ProductsTableAdapter只有一個(gè)方法,GetProducts(),它返回?cái)?shù)據(jù)庫里的所有產(chǎn)品。能夠操作所有的產(chǎn)品當(dāng)然有用,但很多時(shí)候我們想要獲取關(guān)于一個(gè)指定產(chǎn)品的信息,或者屬于某個(gè)特定分類的所有產(chǎn)品。要想給我們的數(shù)據(jù)訪問層添加這樣的功能,我們可以給TableAdapter添加參數(shù)化的方法。

添加參數(shù)化:讓我們來添加一個(gè)GetProductsByCategoryID(categoryID)方法。為給DAL添加新的方法,讓我們回到DataSet設(shè)計(jì)器,在ProductsTableAdapter上按右鼠標(biāo),然后選擇“添加查詢(Add Query)”。

圖 14: 在TableAdapter上按右鼠標(biāo),選擇“添加查詢”

向?qū)紫葧栁覀兪欠褚ㄟ^一個(gè)ad-hoc SQL語句還是生成一個(gè)新存儲過程或者使用現(xiàn)有存儲過程來訪問數(shù)據(jù)庫。讓我們還是選擇使用SQL 語句。接著,向?qū)栁覀兪褂檬裁搭愋偷腟QL查詢。因?yàn)槲覀兿敕祷貙儆谥付ǚ诸惖乃挟a(chǎn)品,我們需要寫一個(gè)返回?cái)?shù)據(jù)行的SELECT語句。

圖 15: 選擇生成一個(gè)返回?cái)?shù)據(jù)行的SELECT語句

添加參數(shù)化的下一步是定義用于訪問數(shù)據(jù)的SQL查詢語句。因?yàn)槲覀冎幌敕祷貙儆谥付ǚ诸惖哪切┊a(chǎn)品,我重 用GetProducts()里的SELECT語句,但添加了一個(gè)WHERE 子 句:WHERE CategoryID = @CategoryID。其中的@CategoryID參數(shù)向TableAdapter配置向?qū)П硎疚覀冋谏傻姆椒▽⑿枰粋€(gè)對應(yīng)類(即,可為null-nullable的整數(shù))的輸入?yún)?shù)。

圖 16: 輸入一個(gè)只返回指定分類的產(chǎn)品的查詢

在添加參數(shù)化的***一步,我們可以選擇使用何種數(shù)據(jù)訪問模式,還可以定制生成的方法的名字。對應(yīng)于Fill 模式,讓我們把名字改成FillByCategoryID,對返回DataTable模式的方法(GetX方法),讓我們來用GetProductsByCategoryID這個(gè)名字。

圖 17: 為TableAdapter的方法選擇名字

在結(jié)束向?qū)Ш螅珼ataSet設(shè)計(jì)器包含了這些新的TableAdapter的方法。

圖18: 通過分類來查詢產(chǎn)品

花點(diǎn)時(shí)間用同樣的手法添加一個(gè)GetProductByProductID(productID) 方法。

這些參數(shù)化的查詢可以在DataSet設(shè)計(jì)器里直接測試。在TableAdapter中的方法上按右鼠標(biāo),然后選擇“預(yù)覽數(shù)據(jù)(Preview Data)”。接著,輸入對應(yīng)參數(shù)的值,然后按“預(yù)覽(Preview)”。

圖19: 屬于飲料(Beverages)類的那些產(chǎn)品列單

通過我們的DAL中的GetProductsByCategoryID(categoryID)方法,我們就能設(shè)計(jì)一個(gè)asp.net網(wǎng)頁來顯示屬于指定分類的那些產(chǎn)品。下面這個(gè)例子顯示了屬于Beverages(飲料)類(CategoryID=1)的所有產(chǎn)品。

Beverages.aspx

asp.net 

 
 
 
 
  1.  < %@ Page Language="C#"   
  2.  
  3. AutoEventWireup="true" CodeFile="Beverages.aspx.cs"   
  4.  
  5. Inherits="Beverages" %>  
  6.  
  7. < !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0   
  8.  
  9. Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  10.  
  11. < html xmlns="http://www.w3.org/1999/xhtml" >  
  12. < head runat="server">  
  13.     < title>Untitled Pagetitle>  
  14.     < link href="Styles.css"   
  15.  
  16. rel="stylesheet"   
  17.  
  18. type="text/css"   
  19.  
  20. />  
  21. < /head>  
  22. < body>  
  23.     < form id="form1" runat="server">  
  24.     < div>  
  25.         < h1>Beveragesh1>  
  26.         < p>  
  27.             < asp:GridView ID="GridView1" runat="server" 
  28.              CssClass="DataWebControlStyle">  
  29.                < HeaderStyle CssClass="HeaderStyle" />  
  30.                < AlternatingRowStyle CssClass="AlternatingRowStyle" />  
  31.             asp:GridView>  
  32.              < /p>  
  33.     < /div>  
  34.     < /form>  
  35. < /body>  
  36. < /html>  
  37.  

Beverages.aspx.cs

 
 
 
 
  1. using System;  
  2. using System.Data;  
  3. using System.Configuration;  
  4. using System.Collections;  
  5. using System.Web;  
  6. using System.Web.Security;  
  7. using System.Web.UI;  
  8. using System.Web.UI.WebControls;  
  9. using System.Web.UI.WebControls.WebParts;  
  10. using System.Web.UI.HtmlControls;  
  11. using NorthwindTableAdapters;  
  12.  
  13. public partial class   
  14.  
  15. Beverages : System.Web.UI.Page  
  16. {  
  17.     protected void   
  18.  
  19. Page_Load(object sender, EventArgs e)  
  20.     {  
  21.         ProductsTableAdapter productsAdapter = new 
  22.          ProductsTableAdapter();  
  23.         GridView1.DataSource =  
  24.           productsAdapter.GetProductsByCategoryID(1);  
  25.         GridView1.DataBind();  
  26.     }  
  27. }  

 

圖 20: 屬于Beverages(飲料)類的所有產(chǎn)品顯示


本文題目:ASP.NET2.0數(shù)據(jù)教程:給數(shù)據(jù)訪問層添加參數(shù)化的方法
標(biāo)題來源:http://m.5511xx.com/article/cdgsjjg.html