成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ASP.NET 2.0數據教程:給數據訪問層添加參數化的方法

開發 后端
本文介紹了在asp.net 2.0中如何創建一個數據訪問層(DAL)的第三步:給數據訪問層添加參數化的方法。

第三步:給數據訪問層添加參數化的方法

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

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

在TableAdapter上按右鼠標,選擇“添加查詢” 

圖 14: 在TableAdapter上按右鼠標,選擇“添加查詢”

向導首先會問我們是否要通過一個ad-hoc SQL語句還是生成一個新存儲過程或者使用現有存儲過程來訪問數據庫。讓我們還是選擇使用SQL 語句。接著,向導會問我們使用什么類型的SQL查詢。因為我們想返回屬于指定分類的所有產品,我們需要寫一個返回數據行的SELECT語句。

選擇生成一個返回數據行的SELECT語句 

圖 15: 選擇生成一個返回數據行的SELECT語句

添加參數化的下一步是定義用于訪問數據的SQL查詢語句。因為我們只想返回屬于指定分類的那些產品,我重 用GetProducts()里的SELECT語句,但添加了一個WHERE 子 句:WHERE CategoryID = @CategoryID。其中的@CategoryID參數向TableAdapter配置向導表示我們正在生成的方法將需要一個對應類(即,可為null-nullable的整數)的輸入參數。

輸入一個只返回指定分類的產品的查詢 

圖 16: 輸入一個只返回指定分類的產品的查詢

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

為TableAdapter的方法選擇名字 

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

在結束向導后,DataSet設計器包含了這些新的TableAdapter的方法。

通過分類來查詢產品 

圖18: 通過分類來查詢產品

花點時間用同樣的手法添加一個GetProductByProductID(productID) 方法。

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

屬于飲料(Beverages)類的那些產品列單 

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

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

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. }  

屬于Beverages(飲料)類的所有產品顯示 

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

【編輯推薦】

  1. 如何在IIS6.0中部署asp.net mvc程序
  2. 用Winform傻瓜式搭建asp.net mvc框架
  3. ASP.NET Session失效的編程思路
  4. ASP.NET Session 狀態的存儲
  5. 了解ASP.NET Web應用程序模型
責任編輯:book05 來源: 博客堂
相關推薦

2009-07-24 13:25:43

創建數據訪問層

2009-07-24 14:15:51

數據訪問層

2009-07-27 09:35:57

業務邏輯層

2009-07-27 09:28:55

TableAdapte

2009-07-24 16:55:53

添加aspx頁面

2009-07-24 13:08:03

BLL類ASP.NET 2.0

2009-07-24 13:08:52

DataRowASP.NET 2.0

2009-07-24 14:23:16

定制編碼DAL

2009-07-27 03:21:00

breadcrumb導

2009-07-24 17:08:31

添加站點地圖asp.net

2009-08-19 10:54:42

ASP.NET數據訪問

2009-07-24 13:07:59

BLL類

2009-07-27 03:23:00

Default.asp

2009-07-27 16:09:05

GridView顯示數

2009-08-04 10:17:55

ASP.NET SqlASP.NET數據訪問

2009-07-27 08:51:24

ObjectDataS

2009-07-24 17:15:52

SiteMapData

2009-07-24 12:41:21

BLL類

2009-07-24 16:37:04

創建母版頁asp.net 2.0

2009-07-27 16:22:54

GridView選擇行
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品久久久久久久久久免费 | 久久国产激情视频 | 精品国产乱码久久久久久闺蜜 | 国产视频黄色 | 久久久精品久久久 | 亚洲一区中文字幕 | 91精品国产综合久久久久久丝袜 | 欧美一区免费 | 久久国 | 每日更新av | 日韩高清成人 | 国产在线精品一区二区 | 日韩在线观看视频一区 | 久热m3u8| 亚洲精品一区二区三区四区高清 | 成人在线视频网站 | 黄色在线免费观看 | 精品视频一区二区三区 | 国产精品久久国产精品 | 久草视频观看 | 黄色片大全在线观看 | 一二三在线视频 | 综合色站导航 | 亚洲精品一区二区三区中文字幕 | 国产激情一区二区三区 | 国产99久久久久 | 久久久久亚洲 | 精品亚洲一区二区三区四区五区 | 日韩欧美视频免费在线观看 | 永久免费视频 | 狠狠久久| 国产成人精品亚洲日本在线观看 | 精品国产一区一区二区三亚瑟 | 国产精品久久久久一区二区三区 | 国产精品一区二区久久 | 免费一级做a爰片久久毛片潮喷 | 久久久精 | 伊人久久综合 | 欧美日韩综合一区 | 精品亚洲视频在线 | 亚洲精品4 |