今天這個範例,也是很淺!專門給剛剛入門的人來學習的。
一旦學會了 SqlDataSource的相關用法(尤其是SQL指令的 Where條件)。
真的就能寫出不少應用,而且不用寫程式也能完工。這應該很吸引初學者吧?
[習題]單一欄位的「小」搜尋引擎 (初學者專用,GridView+SqlDataSource 不寫一行程式)
- 15458
- 0
- ASP.NET 2.0/3.5與 VS 2005/2008
- 2010-06-07
今天這個範例,也是很淺!專門給剛剛入門的人來學習的。
一旦學會了 SqlDataSource的相關用法(尤其是SQL指令的 Where條件)。
真的就能寫出不少應用,而且不用寫程式也能完工。這應該很吸引初學者吧?
Q : 畫面上有一個 GridView(甲),點選某一篇文章(資料)後,
另外一個 GridView(乙)就會呈現出這篇文章(資料)的詳細內容。
A: GridView+SqlDataSource,一行程式碼都不用寫。
這也就是我書本(上集)裡面,第九章( Ch .9-1) 的第二個範例。
以 GridView為例,我們會見到他在資料存取上,有兩個屬性 ---- DataSource 與 DataSourceID
只會用 SqlDataSource這種精靈畫面,很快就會碰壁。
不要小看 DataSource 與 DataBind, ADO.NET都靠他們在跑。
如果您的ASP.NET可以完全脫離他,或許您能力太強了,也或許是您作的東西太小了。
GridView預設的功能,有「選取(Select)」、「編輯、取消」、「更新」、「刪除」
唯獨沒有「新增(Insert)」 的功能。
本文的範例便能破解。
CheckBoxList用來輸入「搜尋條件」,想作一個簡單的搜尋引擎。
但卻發現了一個問題????
CheckBoxList明明是用來作「複選」,但這個範例中卻只能作單選???WHY??
有讀者來信問到:「兩個SqlDataSource,能否共用一個 GridView呢?」
初學者如果不會作這個習題,大概是您不會透過後置程式碼,來控制 SqlDataSource。
這範例很簡單,剛剛好可以看看~
要擷取「使用者 "點選" 了 GridView的哪一列?」
有很多的寫法,但我測試過後,發現一些特別的狀況。
要在 GridView的樣版裡面,抓住「子控制項」。有兩種作法:
第一,不知道子控制項的ID名稱,要用 .Controls(數字)來撈取
第二,知道子控制項的ID名稱(例如本文的範例),則改用 .FindControl("子控制項的ID名稱")
本範例是給讀者的售後服務,適合放在本書10.4節的後面,最為課後練習。
DbProviderFactory類別,我推薦這幾篇文章,寫得很淺。看完程式碼,就學起來了。
找了微軟MSDN,反倒沒啥範例。
把國產貨(Z5)變成美國貨(NBOD 410),
把2TB的NAS,變成4TB。爽!
這篇文章超悶!因為全部都用後置程式碼(Code Behind)來作,自己寫程式來作 SqlDataSource
所以GridView的「分頁」、「編輯」、「刪除」、「更新」......通通採用後置程式碼(自己動手寫)
在許多網路論壇上,會有人發問這樣的問題,因為入門書比較不會講到這些....包含 YouTube教學影片
上一篇文章講的是 VaryByParam的用法。
這個範例,則是改用 VaryByControl 的用法。
我們鎖定畫面上的下拉式選單(DropDownList控制項),來作Cache。本文有附上程式範例給大家下載。
不瞞您說,小弟第二本ASP.NET的書剛剛上市,
朋友就推薦我去藍色小鋪、或是Yahoo知識+回答問題,累積聲望後順便能打打廣告。
跟Yahoo知識+比起來,藍色小舖的ASP.NET發問者,比較用功,程度也比較好。
(Yahoo知識+上面的發問者,比初學者還要初學者,甚至是直接去問習題,等著抄解答的)
跟上一個範例不同的,這次有兩個控制流程
控制流程一:我們從一個 .txt文字檔案裡面,取得數據(值)。然後以參數的方式,寫入(Insert Into)資料表。
控制流程二,把新增資料後的資料表,用Excel檔案輸出,證明剛剛的新增資料是成功的。
MS SQL Server 2005的「SSIS」 (SQL Server Integration Service)
其實就是以前SQL 2005的DTS(資料轉換服務)的接班人。
因為這次不光是升級而已,是一個大改版,所以直接升級舊有的DTS的話,會出現一些小缺失、甚至是警告。以下是一個入門範例,從資料表裡面撈出資料,經過「轉換」後,輸出成一個Excel檔。
俗話說教學相長、三人行必有我師。
真是沒錯!有一位熱心的網友 Nick,在MasterPage發現了一些問題,他也找到了解法。
下面的資訊一起分享給大家,我也學到很多。
GridView也是目前大多數ASP.NET書籍第一介紹的「大型、全能控制項」,
GridView能玩到的功能很多,由淺入深,有各種玩法。
重點不是在「強調GridView的英明神武」,而是在GridView的學習歷程中,我們學到的東西,都可以延續到其他控制項來使用。
這才是書籍作者偏好 「優先推薦GridView」的理由吧。
以初學者為例,GridView的學習歷程,可以包含......
啥?Web OS...........怎麼可能?
很酷的網路空間,免費登錄就提供5GB
操作界面是用 Flash作的,很類似OS!
還有免費的 E-Mail
這隻程式可以說是ASP.NET 1.x版 初學者不可錯過的經典範例!把以前ASP必須使用好幾隻程式才能完成的功能,一次解決。
市面上的書籍,講的最糟糕的部分也是這一段。講的超難!......只因為他們不採用Visual Studio .NET來開發!真的差別很大!生產力差很多很多......
這隻程式很簡單,但是......務必搭配上一章的e.Item.ItemIndex觀念,一起研讀本章,方能生效!
以前的教學經驗,這一關是初學者進入ASP.NET一定會「卡住」的地方。並不好解釋這邊的抽象觀念,更何況是以書寫的文字方式來表達呢?