課程名稱:_____________ 指導教授:_____________ ASP.NET 2.0網頁製作 徹底研究 課程名稱:_____________ 指導教授:_____________
本書特點 在ASP.NET程式使用.NET Framework的類別物件 Web表單處理與驗證,包含正規化運算式的資料驗證 伺服端的檔案、資料夾和XML文件處理 Access與SQL Server 2005 Express的網頁資料庫 分別使用資料繫結和來源控制項處理網頁資料庫 完整會員管理和群組權限管理 網站導覽和一致化設計 完整ASP.NET的個人化程序 使用WSDL檔案建立Web服務的客戶端程式
ASP.NET 2.0版新功能 新版ASP.NET 2.0版不僅完全相容舊版1.0/1.1,並且能夠在大幅減少程式碼的情況下,快速使用Visual Web Developer 2005 Express建立Web應用程式,其主要的新增功能,如下所示: 網站一致化設計的主版頁面。 網站會員管理控制項和Membership API。 網站的個人化Profile物件和網頁組件控制項。 顯示和維護資料庫的資料處理控制項。 更多網站設定、管理工具和ASP.NET開發工具。
如何閱讀本書-1 本書前10章都是在訓練讀者的ASP.NET程式設計能力。從安裝開始,詳細說明語法、基本輸出入和Web表單處理,對於HTML語言不熟悉的讀者,請閱讀書附光碟的完整電子書「HTML與CSS網頁設計範例教本」。 在第8~9章解說ADO.NET網頁資料庫,第10章說明2.0版新增的資料來源控制項。對於初學者來說,請仔細閱讀前10章內容,以便應付之後實際建立Web網站的挑戰。
如何閱讀本書-2 對於ASP.NET程式設計有經驗的讀者來說,或者學了半天,還是無法設計所需網站功能的讀者,請依所需功能選擇閱讀章節。 例如:建立Web應用程式請閱讀第11~12章,Web表單處理請閱讀第5和6章,登入網站和會員管理是第13章,網路商店在第15章,拍賣網站為第17章的方式來學習ASP.NET實戰技巧。
目錄-I 1. ASP.NET與Web應用程式的基礎 2. Visual Basic語法的ASP.NET程式 3. .NET Framework類別函式庫的使用 4. ASP.NET的HTTP物件、輸出入與Cookie處理 5. Web表單程式設計模型 6. Web表單的處理 7. Web伺服器檔案與XML文件處理 8. ADO.NET的網頁資料庫操作
目錄-II 9. ADO.NET的網頁資料庫查詢 10. 網頁資料庫顯示與維護控制項 11. ASP.NET的Web應用程式 13. 網站的使用者與會員管理 14. 網站的個人化資訊 15. 建立網路商店 16. 交友網站的設計
目錄-III 17. 架構拍賣網站 18. 個人入口網站的建立 附錄A HTML控制項與進階表單驗證控制項 附錄B SQL查詢語言
第1章 ASP.NET與Web應用程式的基礎 1-1 Web應用程式的開發環境 1-2 建立電子商務網站 1-3 HTML與XML的基礎 1-6 Visual Web Developer建立ASP.NET程式
1-1 Web應用程式的開發環境 1-1-1 資訊處理系統 1-1-2 多層式主從架構的Web開發環境
1-1-1 資訊處理系統-說明 資訊處理系統(Information Processing Systems)是使用資訊處理模型(Information Processing Model)所建立的應用程式。以Web開發環境來說,可以分為: 資訊處理模型(Information Processing Model) 資訊傳遞模型(Information Delivery Model)
1-1-1 資訊處理系統-資訊傳遞模型 資訊傳遞模型就是傳統Web網站,所有資訊內容是以HTML語言撰寫的靜態HTML文件,我們可以使用FrontPage或Dreamweaver等網頁編輯工具來建立網站內容,如下圖所示:
1-1-1 資訊處理系統-資訊處理模型 資訊處理模型主要的目的是建立互動的Web網站內容,此時Web伺服器的角色不單純是傳遞資料,它是一個完整資訊處理系統的執行平台,我們需要使用伺服端網頁技術,例如:ASP.NET來建立此種系統,如下圖所示:
1-1-2 多層式主從架構的Web開發環境-說明 多層架構(N-Tier Architecture)是主從架構的擴充,主從架構的電腦本身並沒有分別,電腦只是分別扮演不同的角色,如下所示: 伺服端(Server):在主從架構中扮演提供服務(Service)的提供者(Provider)角色。 客戶端(Client):在主從架構中的角色是提出服務請求(Request)的請求者(Requester)。
1-1-2 多層式主從架構的Web開發環境-圖例
1-2 建立電子商務網站 1-2-1 電子商務的種類 1-2-2 如何建立電子商務網站
1-2-1 電子商務的種類-說明 「電子商務」(E-commerce)就是利用Internet來做生意,也就是使用電腦在網路上進行商業交易活動。對於伺服端網頁技術來說,電子商務網站就是其最常實作的Web應用程式之一。 電子商務幕後的經營模式和交易方式,才是決定電子商務是否成功的關鍵,以交易對象來區分,可以分成多種交易模式。
1-2-1 電子商務的種類-B to C B to C型電子商務 B to C的英文是Business to Consumer,也就是企業對個人交易模式的電子商務,這是一種企業直接銷售產品或服務給使用者的交易模式。 B to C交易模式和現實生活的商店並沒有什麼不同,只不過將現實的賣場搬到網路。因為網路商店並不需要真正賣場,一個網路商店就可以輕鬆提供比目前大賣場更多的銷售商品,再加上沒有中間經銷商的經銷成本,在價格上擁有更大的競爭優勢。
1-2-1 電子商務的種類-B to B B to B型電子商務 B to B的英文是Business to Business,也就是企業對企業交易模式的電子商務。這是指企業銷售商品給企業的商業活動,企業是在網上採購所需商品。因為傳統採購方式受限於地域限制,主要是以電話或傳真進行處理,現在只需連上網路,就可以處理所有商品或零組件的採購。 企業間電子商務的主要目的是整合上下游零組件的供銷管理,以便使用Internet自動化進行採購,可以節省採購成本和增加效率,進而提高產品售價的競爭力。
1-2-1 電子商務的種類-C to C C to C型電子商務 C to C的英文是Consumer to Consumer,這是消費者對消費者交易模式的電子商務。換句話說,在網路上是由使用者提供商品,銷售給其他使用者,網站只是扮演仲介角色,提供所需的交易機制,但不涉入交易過程,即所謂的跳蚤巿場或拍賣網站。
1-2-1 電子商務的種類-C to B C to B型電子商務 C to B的英文是Consumer to Business,也就是消費者對廠商交易模式的電子商務,透過網路來集合使用者需求,提高採購數量上的優勢和廠商進行議價,以得到最優惠的商品價格。 C to B的消費者模式是集合大家的單一需求,以便取得消費者交易的主導權與廠商進行議價,以降低商品價格,即所謂的集殺。
1-2-2 如何建立電子商務網站 電子商務是一個網路上沒有營業場所的虛擬銷售據點,架構電子商務網站的基本流程,如下圖所示:
1-3 HTML與XML的基礎 1-3-1 HTML標示語言 1-3-2 什麼是XML 1-3-3 XHTML文件
1-3-1 HTML標示語言-說明 「HTML」(HyperText Markup Language)標示語言是一種文件編排語言,其主要目的是編排文件內容,以便顯示漂亮的文件內容。 HTML 使用的是SGML語法,SGML是一種功能強大的文件標示、管理和編排語言,在1986年成為ISO標準的文件描述語言。 Tim Berners-Lee在1991年建立HTML語言,在1993年 HTML1.0 版由Berners-Lee和Connolly所完成,經過3.2版到目前的最新版HTML 4.0x版,它是一種文件的格式編排語言,不像SGML允許定義如何標示文件的標籤,HTML只是使用SGML的慣用語法,也就是標籤和屬性。
1-3-1 HTML標示語言-範例 01: <html> 02: <head><title>一份電子郵件的內容</title></head> 03: <body> 04: <b>from: </b>hueyan@ms2.hinet.net<br> 05: <b>to: </b>hueyan@tpts1.seed.net.tw<br> 06: <b>subject: </b>測試郵件功能<br> 07: <p>這是第一封郵件</p> 08: </body> 09: </html>
1-3-1 HTML標示語言-預覽 請啟動瀏覽程式執行「檔案/開啟舊檔」指令,就可以載入HTML文件,如下圖所示:
1-3-1 HTML標示語言-架構 HTML文件內容是一份文字檔案,內含網頁顯示的內容和標示編排的標籤指令。其基本架構如下所示: <head> HTML網頁的基本定義 </head> <body> HTML網頁的內容 </body> </html> 文件架構是位在<html>和</html>標籤間的內容和定義,<head>和</head>標籤包圍的區塊定義HTML網頁本身。例如:標題文字,實際網頁內容是定義在<body>和</body>標籤間,這才是網頁真正的內容。
1-3-2 什麼是XML-說明 「XML」(Extensible Markup Language)可擴展標示語言也屬於一種標籤語言,XML 1.0版規格是在1998年2月正式推出,目前XML的相關技術仍在持續發展和制定中,這只是一個開始,並不是結束。 XML語法十分類似HTML,也屬於SGML的子集,繼承SGML自訂標籤的優點,並且刪除一些SGML複雜的部分,在功能上能夠補足HTML標籤的不足,但是,擁有更多的擴充性。
1-3-2 什麼是XML-範例 01: <?xml version="1.0" encoding="Big5"?> 02: <email> 03: <from>hueyan@ms2.hinet.net</from> 04: <to>hueyan@tpts1.seed.net.tw</to> 05: <subject>測試郵件功能</subject> 06: <body> 07: <title>這是第一封郵件</title> 08: <note>使用XML建立的郵件內容</note> 09: </body> 10: </email>
1-3-2 什麼是XML-預覽 請啟動瀏覽程式執行「檔案/開啟舊檔」指令,在選取檔案後就可以載入XML文件,如下圖所示:
1-3-3 XHTML文件-說明 「XHTML」(Extensible HyperText Markup Language)是HTML 4.0x版以XML 1.0語法重新制定的標籤語法,屬於一份標準的XML文件。 XHTML的目的是取代HTML 4.0版,目前最新版本為2.0,不過XHTML仍然採用HTML 4.0版的標籤,它是W3C制定取代HTML 4.0版的下一個世代的HTML。
1-3-3 XHTML文件-注意事項 XHTML文件比HTML文件的標籤要求更加嚴格,必須遵循XML文件的撰寫規則,其注意事項如下所示: 不可省略結尾標籤,如果是沒有結尾標籤的單獨標籤,標籤寫法在結束「>」符號前需要加上「/」符號,例如:<br/>、<hr/>等。 標籤和屬性都是使用小寫的英文字,例如:<p>、<body>等。 屬性值需要使用引號括起來。 name屬性使用id屬性取代。
1-3-3 XHTML文件-範例 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>這是一個測試網頁</title> </head> <body> <p>歡迎進入我的網頁</p> </body> </html>
1-4 ASP.NET的基礎 1-4-1 .NET Framework的基礎 1-4-2 ASP.NET的基礎
1-4-1 .NET Framework的基礎-說明 .NET Framework是微軟下一世代的程式開發平台,目前最新版本是2.0版,它是由CLR(Common Language Runtime)和.NET Framework類別組成。 .NET Framework程式檔案在使用.NET編譯程式編譯時,並不是直接編譯成CPU的機器語言,而是一種中間程式語言稱為「MSIL」(Microsoft Intermediate Language)。
1-4-1 .NET Framework的基礎-圖例 等到執行程式時,CLR使用其「JIT」(Just In Time)編譯程式將MSIL轉換成機器語言和執行,其架構如下圖所示:
1-4-2 ASP.NET的基礎-說明 ASP.NET技術建立的Web應用程式是在.NET Framework的CLR平台上執行,如下圖所示:
1-4-2 ASP.NET的基礎-特點 ASP.NET 2.0版仍然相容於舊版1.0和1.1版,其特點如下所示: 提供類似Visual Basic的事件模型 執行效能的改進 強大功能和擴充性 與程式語言無關 強大的伺服端功能 伺服端控制項
1-4-3 ASP.NET 2.0版 ASP.NET 2.0版不僅完全相容1.0/1.1版,搭配.NET Framework 2.0的ASP.NET 2.0版,其新增功能可以分成幾個部分,如下所示: 網站的一致化設計 網站的會員管理 網站的個人化 全新的資料處理控制項 網頁組件控制項 提供更多的網站設定和管理工具
1-5 建立ASP.NET 2.0版的開發環境 1-5-1 在Windows XP安裝IIS 5 1-5-2 安裝Visual Web Developer與.NET Framework 2.0版 1-5-3 指定IIS使用的ASP.NET版本 1-5-4 執行ASP.NET程式
1-5 建立ASP.NET 2.0版的開發環境 ASP.NET 2.0版的執行環境需要.NET Framework 2.0版,主要支援的作業系統有:Windows 2000 Service Pack 3、Windows Server 2003和 Windows XP Service Pack 2。 本書是使用Windows XP Professional SP2作為ASP.NET開發和測試環境。請注意! Windows XP家用版並不支援IIS。請直接安裝第Visual Web Developer,使用內建伺服器來建立ASP.NET開發測試環境。
1-5-1 在Windows XP安裝IIS 5 ASP.NET執行環境需要Web伺服器,以Windows 2000/XP Professional來說,就是「IIS」(Internet Information Services)。 當然,我們也可以不安裝IIS,直接使用Visual Web Developer內建的Cassini伺服器來測試ASP.NET程式的執行。
1-5-2 安裝Visual Web Developer與.NET Framework 2.0版 Visual Web Developer 2005 Express版簡稱VWD,它是Visual Studio產品線的擴充,微軟Express系列提供實用和最少負擔的程式開發工具,可以讓學生和初學者輕鬆進入Visual Studio和.NET Framework開發平台,快速建立所需的.NET應用程式。 在Visual Web Developer Express中文版包含.NET Framework 2.0中文版和SQL Server 2005 Express中文版。
1-5-3 指定IIS使用的ASP.NET版本 ASP.NET各版本可以在Windows作業系統並存,如果Windows作業系統同時安裝多個版本的.NET Framework,我們可以在IIS管理工具指定網站使用的ASP.NET版本,如下圖所示:
1-5-4 執行ASP.NET程式-主目錄 公佈到Web伺服器主目錄 請將ASP.NET程式Ch1-5.aspx檔案另存或複製到IIS預設的主目錄「C:\Inetpub\wwwroot」,然後啟動Internet Explorer在【網址】欄輸入URL網址,以此例如下所示: http://localhost/Ch1-5.aspx
1-5-4 執行ASP.NET程式-Web共用 將資料夾設定成Web共用 除了將ASP.NET程式檔案公佈到伺服器的主目錄外,我們還可以將儲存程式檔案的資料夾設為Web伺服器的虛擬目錄(請注意!網站儲存的檔案系統需要是NTFS,才能使用2.0版的新功能)。
1-6 Visual Web Developer建立ASP.NET程式 1-6-1 啟動Visual Web Developer建立Web網站 1-6-2 開啟Web網站 1-6-3 開啟與新增ASP.NET程式 1-6-4 在VWD執行ASP.NET程式
1-6-1 啟動Visual Web Developer建立Web網站
1-6-2 開啟Web網站 當在VWD新增HTTP網站或檔案系統網站後,事實上,對於IIS建立的預設網站和擁有ASP.NET程式的資料夾,我們根本不用新增Web網站,就可以直接在VWD開啟Web網站,如下圖所示:
1-6-3 開啟與新增ASP.NET程式-開啟ASP.NET程式 在右上方的「方案總管」視窗可以看到網站的檔案清單,請按二下ASP.NET程式檔案名稱,例如:Ch1-5.aspx,就可以開啟程式檔案,如下圖所示:
1-6-3 開啟與新增ASP.NET程式-新增ASP.NET程式 在Visual Web Developer新增ASP.NET程式,請在開啟網站後,執行「檔案/新增/檔案」指令,可以看到「加入新項目」對話方塊。
1-6-4 在VWD執行ASP.NET程式 VWD內建Cassini伺服器,就算沒有安裝IIS伺服器,也一樣可以在整合環境來測試ASP.NET程式的執行,其步驟如下所示: 1. 請啟動VWD,執行「檔案/開啟/網站」指令開啟「Ch01」網站。 2. 請在「方案總管」按二下【Ch1-5.aspx】開啟ASP.NET程式檔案後,執行「檔案/在瀏覽器中檢視」指令,就可以使用內建伺服器來預覽ASP.NET程式的執行結果。