首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET 2.0 DataSource 系列控制項完整介紹:六大類型與 ObjectDataSource 實作

     編輯:關於ASP.NET

六大 DataSource 控制項比較

控制項用途特色
SqlDataSourceSQL Server / OleDb / ODBC精靈設定 SELECT/INSERT/UPDATE/DELETE,支援參數化。
AccessDataSourceAccess (.mdb)SqlDataSource 簡化版,自動解析 Jet/OLEDB 連接字串。
ObjectDataSource自訂商業物件 (BLL/DAL)三層架構核心,繫結方法而非 SQL,支援自訂型別、分頁、排序。
XmlDataSourceXML 檔案XPath 篩選、XSLT 轉換,繫結 TreeView/Menu/GridView。
SiteMapDataSourceWeb.sitemap專供導航控制項 (TreeView/Menu/SiteMapPath) 繫結。
EntityDataSource (3.5 SP1+)Entity FrameworkLINQ to Entities 整合,非 2.0 內建。

ObjectDataSource 實作範例:三層架構

商業邏輯類別 (App_Code/Products.cs)

public class Products {
    public DataSet GetProducts() {
        string connStr = "Server=(local);Integrated Security=True;Database=Northwind";
        using (SqlConnection conn = new SqlConnection(connStr)) {
            SqlDataAdapter da = new SqlDataAdapter("SELECT ProductID, ProductName, UnitPrice FROM Products", conn);
            DataSet ds = new DataSet();
            da.Fill(ds, "Products");
            return ds;
        }
    }
}

設定 ObjectDataSource 精靈步驟

  1. 拖曳 ObjectDataSource → 「設定資料來源」→ 選擇 Products 類別。
  2. 選擇 GetProducts 方法作為 Select 方法。
  3. GridView 選擇此 ObjectDataSource,自動產生欄位。

進階:分頁、排序、參數化方法

  • 啟用 EnablePaging="true",SelectMethod 需接受 startRowIndex, maximumRows 參數並回傳總筆數 (配合 SelectCountMethod)。
  • SortParameterName 指定排序參數名稱,方法內套用 DataView.Sort 或 SQL ORDER BY。
  • SelectParameters/UpdateParameters 繫結 ControlParameter/QueryStringParameter/SessionParameter 等。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved