返回“ASP.NET 2.0數據教程目錄”
導言
在上一章的教程中,我們看了GridView、DetailsView和FormView 綁定到OjbectDataSource控件顯示數據,ObjectDataSource調用了類ProductsBLL 的GetProducts()方法。方法GetProducts()返回一個有Northwind數據庫的 Products表的所有記錄組成的強類型數據表。類ProductsBLL還包含了其它返回部 分數據的方法:GetProductByProductID(productID), GetProductsByCategoryID(categoryID), 和 GetProductsBySupplierID (supplierID) 。這三個方法要求輸入一個參數來指示如何篩選返回的產品信息數據。
ObjectDataSource可以調用需要傳入參數的方法,不過為了實現這一 點,我們需要指定這些參數從哪裡獲取值。這些參數的值可以通過硬代碼傳入, 也可以從某類來源動態地獲取,包括:查詢字符串的值(QueryString),會話變 量(Session variables),頁面上控件的屬性值,或者其它。
在這一章 的教程裡,讓我們開始舉例說明如何使用參數設置一個硬編碼的值。特別地,我 們將著眼於添加一個DetailsView到頁面來顯示一個名為Chef Anton’s Gumbo Mix的特殊產品,它的ProductID是5 。下一步,我們將看看如何基於Web控 件設置參數的值。特別地,我們將使用一個TextBox讓用戶鍵入國家(country) ,在點擊某個按鈕後列出駐該國家的供應商。
使用一個硬編碼參數值
第一個例子,首先添加一DetailsView控件到BasicReporting文件夾裡的 DeclarativeParams.aspx頁面。從DetailsView控件的智能標記的下拉列表中選擇 <新建數據源…>,然後選擇添加一個ObjectDataSource 。
圖 1: 添加一個ObjectDataSource到頁面
這將自動打開 ObjectDataSource控件的配置數據源導航。在第一屏的導航中選擇類ProductsBLL 。
圖 2: 選擇類ProductsBLL
既然我們要顯示一個特定的產品的信 息,我們應該使用GetProductByProductID(productID)方法。
圖 3: 選擇GetProductByProductID(productID) 方法