如果要我舉出一個特別的例子,跟大家說明 ASP.NET與ASP的差異在哪裡?
我一定會講「DataBinding」。
ASP.NET 2.0以後,因為 SqlDataSource這個精靈控制項太好用,
所以完成後,初學者還是不知道哪裡作了 DataBinding?
如果您學習ASP.NET,卻對 DataBinding的觀念毫無所悉,剛好可以趁此體會一下。
如果要我舉出一個特別的例子,跟大家說明 ASP.NET與ASP的差異在哪裡?
我一定會講「DataBinding」。
- 正體中文稱為「資料繫結」,有點饒舌拗口。
- 中國大陸稱為「資料綁定」,音義都類似。
以前的 ASP/PHP/JSP如果想把資料表的 id欄位 與 title欄位,透過 HTML表單的下拉式選單(<select>標籤)來呈現。
一定要寫一小段程式才行,而且要自己動手處理,把程式碼跟<Select>標籤混在一起,加上一個迴圈.....Bala Bala.....
煩死了!煩! 以前的ASP寫法,真是太超過~
而 ASP.NET就很簡單,幾個步驟就能完成。
ASP.NET 2.0以後,因為 SqlDataSource這個精靈控制項太好用,
所以完成後,初學者還是不知道哪裡作了 DataBinding?......很可惜啊!只會操作,卻不懂原理了!
相形之下,我就懷念起 ASP.NET 1.x版的時候,自己稍微寫點程式,但卻清楚一些細節的變化。
簡單地說,我們從資料庫取得(撈出)資料後,
把這些資料(DataReader或DataSet都可以),跟一個特殊的控制項,作DataBinding。
就能把這些撈出來的資料,透過這個控制項,呈現在畫面上。
不需要像以前的ASP程式,自己動手寫迴圈、寫程式安排畫面....等等瑣碎的細節
一句 控制項.DataBind() ,瞬間完成一切! 跟變魔術一樣,神奇!神奇!
註解:這些能作 DataBinding的控制項,又稱為「資料繫結控制項」,例如:GridView、DropDownList等等。
關於 DataBinding,本站已經寫了許多相關文章 而且已經集結出書 --
作者出版的書籍(ASP.NET專題實務 II -- 範例集與4.0新功能 )
ASP.NET 4.0 專題實務(II) -- 範例應用與 4.0新功能(松崗出版)
這是市面上,少數以專文介紹 DataBinding與 DataBindExpression的書籍。
如果您連這個觀念都還不清楚,您的 ASP.NET只學了 1/3而已。
02 '----自己寫的----
03 Imports System
04 Imports System.Web.Configuration
05 Imports System.Data
06 Imports System.Data.SqlClient
07 '----自己寫的---- VB語法
08
09 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
10 ‘-- 註解:SqlDataSource的設定畫面,幫我們處理掉下面這一大串程式碼。
11 Dim Conn As New SqlConnection("資料庫的連接字串,ConnectionString")
12 Conn.Open() '---- 第一、連結資料庫
13
14 Dim cmd As SqlCommand = New SqlCommand("select id,title from test", Conn)
15 Dim dr As SqlDataReader = cmd.ExecuteReader() '---- 第二、執行SQL指令,取出資料
16
17 ‘-- 註解:執行SQL指令之後,把資料庫撈出來的結果,交由ListBox控制項來呈現。
18 ListBox1.DataSource = dr
19 ListBox1.DataBind() '---- 第三、資料繫結
20
21 ‘-- 註解:注意!!這裡的 .DataSource與另外一個「DataSourceID」屬性完全不同。兩者也不可同時使用!本書後續會深入解說……
22
23 cmd.Cancel()
24 dr.Close()
25 Conn.Close() '---- 第四、關閉資料庫的連接與相關資源
26 End Sub
..........................................................................................................................................................................................
10 //註解: C#語法
11 SqlConnection Conn = new SqlConnection("資料庫的連接字串,ConnectionString");
12 Conn.Open();
13
14 SqlCommand cmd = new SqlCommand("select id,title from test", Conn);
15 SqlDataReader dr = cmd.ExecuteReader();
16
17 ListBox1.DataSource = dr;
18 ListBox1.DataBind();
10
20 cmd.Cancel();
21 dr.Close();
22 Conn.Close();
如果您對於上面的「連結資料庫四大步驟」,還不清楚,
可以參考:初探ADO.NET #1,程式與資料庫互動的四大步驟
完整的章節說明,都在下面的PDF檔案,在此完全公開。
附檔是一個PDF檔案(3-8-1.rar)是我書裡面的第三章,還沒有講太深。
先讓讀者瞭解一下 DataBinding(),尤其是最後面那段後置程式碼。
- 請下載上面的檔案,解壓縮後可以閱讀、列印。
- 要閱讀PDF檔,請到 www.adobe.com ,可以免費下載 PDF Reader軟體。
- 如果您學習ASP.NET,卻對 DataBinding的觀念毫無所悉,剛好可以趁此體會一下。
- 這也是我的新書,跟一般入門書不同的地方。我不只教VS 2008的「操作」,更講背後的運作原理。
- 知其然,也要知其所以然!
2008/10/15 本文是一整個系列的討論,請看----
作者出版的書籍(ASP.NET專題實務 II -- 範例集與4.0新功能 )
=================================================================================
2009/11/10補充: 本系列 DataBinding文章已經延伸許多範例與程式,並撰寫成書本裡面的一章,
將會發表在這一本書裡面,請看:[預告]ASP.NET專題實務(下集)-- 範例集與.NET 4.0新功能
2010/12/16補充: 完整 DataBinding全文下載(PDF檔案),寫得很棒。簡體中文版。
我將思想傳授他人, 他人之所得,亦無損於我之所有;
猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson
線上課程教學,遠距教學 (Web Form 約 51hr) https://dotblogs.com.tw/mis2000lab/2016/02/01/aspnet_online_learning_distance_education_VS2015
線上課程教學,遠距教學 (ASP.NET MVC 約 140hr) https://dotblogs.com.tw/mis2000lab/2018/08/14/ASPnet_MVC_Online_Learning_MIS2000Lab
寫信給我,不要私訊 -- mis2000lab (at) yahoo.com.tw 或 school (at) mis2000lab.net
(1) 第一天 ASP.NET MVC5 完整影片(5.5小時 / .NET 4.x版)免費試聽。影片 https://youtu.be/9spaHik87-A
(2) 第一天 ASP.NET Core MVC 完整影片(3小時 / .NET Core 6.0~8.0)免費試聽。影片 https://youtu.be/TSmwpT-Bx4I
[學員感言] mis2000lab課程評價 - ASP.NET MVC , WebForm 。 https://mis2000lab.medium.com/%E5%AD%B8%E5%93%A1%E6%84%9F%E8%A8%80-mis2000lab%E8%AA%B2%E7%A8%8B%E8%A9%95%E5%83%B9-asp-net-mvc-webform-77903ce9680b
ASP.NET遠距教學、線上課程(Web Form + MVC)。 第一天課程, "完整" 試聽。
......... facebook社團 https://www.facebook.com/mis2000lab ......................
......... YouTube (ASP.NET) 線上教學影片 https://www.youtube.com/channel/UC6IPPf6tvsNG8zX3u1LddvA/
Blog文章 "附的範例" 無法下載,請看 https://dotblogs.com.tw/mis2000lab/2016/03/14/2008_2015_mis2000lab_sample_download
請看我們的「售後服務」範圍(嚴格認定)。
......................................................................................................................................................
ASP.NET MVC => .NET Core MVC 線上教學 ...... 第一天課程 完整內容 "免費"讓您評估 / 試聽
[遠距教學、教學影片] ASP.NET (Web Form) 課程 上線了!MIS2000Lab.主講 事先錄好的影片,並非上課側錄! 觀看時,有如「一對一」面對面講課。