編程實現>ASP.NET 3.5開發範例精講精析>探討SqlDataSource控制項

來源:互聯網
上載者:User

SqlDataSource控制項,由四個精微空間構成:

1,嚮導。2,屬性。3,控制項屬性代碼。4,後台代碼。

 

1,嚮導:就是下一步->下一步->完成。

資料庫連接字串->自訂sql語句或預存程序->指定where語句的參數來源。

資料庫連接字串->選擇表->選擇列->配置where語句,orde rby語句,產生insert,update,delete語句->指定where語句的參數來源。(這是圖形化操作)

嚮導的每一步操作,都會產生控制項屬性代碼。

 

2,屬性:一張屬性列表,然後你配置。

嚮導能實現的,屬性也能實現,而且實現得更多。 包括緩衝,取到值是null或取不到值,資料衝突,DataReader或DataSet,以及檢視狀態。

屬性的操作,同時產生控制項屬性代碼。

 

3,控制項屬性代碼:HTML有原始碼,asp.net控制項也有原始碼。

 

4,後台代碼: 控制項屬性代碼能實現的,後台代碼都能實現,而且實現得更多。比如用SqlDataSource控制項,不用資料繫結控制項,顯示位元據的映像。後台代碼往往使用SqlDataSource控制項的事件,處理各種問題,比如控制項屬性代碼裡沒聲明sql查詢語句參數,可在後台代碼添加一個sql查詢語句的參數。

 

-----------------------------------------------------------------

編程實現>ASP.NET 3.5開發範例精講精析>探討SqlDataSource控制項>嚮導>指定參數

都是sql語句的查詢,刪除,插入,更新都需要參數,用來定位。參數來源:

asp.net控制項,使用者佈建檔案web.config,查詢字串,會話session,cookie,後台代碼自訂參數。

 

-----------------------------------------------------------------

編程實現>ASP.NET 3.5開發範例精講精析>探討SqlDataSource控制項>屬性>CancelSelectOnNullParameter屬性

下拉式清單,沒選擇任何資料,但把所有資料都查出來。

sql的查詢語句需要參數,你給它Null 字元串,那SqlDataSource控制項擷取到的參數是null,SqlDataSource就不執行查詢語句。

你要執行的話,設定 CancelSelectOnNullParameter屬性為false,然後再改寫sql語句。

 

-----------------------------------------------------------------

編程實現>ASP.NET 3.5開發範例精講精析>探討SqlDataSource控制項>屬性>DataSourceMode屬性

DataSourceMode屬性有兩個選擇,一是DataReader,二是DataSet。 DataReader速度快,不支援緩衝,分頁與動態排序。DataSet支援緩衝,分頁與動態排序,但速度慢。本質上,DataReader取得的資料不儲存在伺服器記憶體,但DataSet會。

 

----------------------------------------------------------------- 

編程實現>ASP.NET 3.5開發範例精講精析>探討SqlDataSource控制項>屬性>使用FileterExpression屬性篩選資料

把所需資料讀出用有兩種方式。一,直接在sql查詢語句設定where=什麼就好。二,sql查詢語句是所有都查出來,用FileterExpression屬性篩選。所以第二種方式,要DataSet,緩衝,參數。

第二種方式的優點就是:頻繁篩選其他條件,速度快。但如果不篩選其他條件,顯然浪費速度。

 

-----------------------------------------------------------------

編程實現>ASP.NET 3.5開發範例精講精析>探討SqlDataSource控制項>後台代碼>處理sql命令執行錯誤

人在江湖飄,哪有不挨刀。程式也不例外。如何捕捉 SqlDataSource控制項異常(比如sql語句中查詢了不存在的表),只需在SqlDataSource控制項的Selected(或者插入,更新,刪除語句)事件處理函數裡編寫異常判斷捕捉代碼即可。還要告訴編譯器,異常已由我自行處理,也就是ExceptionHandled屬性設定成true。

 

-----------------------------------------------------------------  

編程實現>ASP.NET 3.5開發範例精講精析>探討SqlDataSource控制項>後台代碼>取消sqldatasource控制項的執行

執行sqldatasource前,驗證參數是否符合要求,不符合,則取消執行。

在後台代碼中,在事件中編寫代碼來判斷參數的正確與否。有五種事件,查,增,刪,改,篩選(Filtering)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.