關(guān)于我們
書單推薦
新書推薦
|
ASP.NET實踐教程(第2版) 《ASP.NET實踐教程(第2版)》采用C#語言作為ASP.NET Web應用程序的開發(fā)語言,以Visual Studio為開發(fā)平臺,通過簡單實用的實例全面介紹使用ASP.NET進行Web程序開發(fā)的常用技術(shù)。本書第1~7章主要介紹ASP.NET的基礎(chǔ)知識、ASP.NET的內(nèi)置對象、Web服務器控件、驗證控件、網(wǎng)頁布局技術(shù)、Web數(shù)據(jù)庫編程基礎(chǔ)等內(nèi)容;第8~11章介紹網(wǎng)站設計中幾個常用的功能模塊,包括注冊登錄模塊、在線投票模塊、留言板模塊、文件上傳下載模塊等;第12章介紹一個綜合的ASP.NET應用開發(fā)案例。 本書可作為高等院校計算機相關(guān)專業(yè)的教材,也可供具有一定編程經(jīng)驗又需要迅速熟悉ASP.NET的讀者參考,同時也適合自學ASP.NET的讀者閱讀。 《ASP.NET實踐教程(第2版)》特點 1. 循序漸進,通俗易懂 本書所講的內(nèi)容避開了晦澀難懂的理論知識,但又覆蓋了使用ASP.NET技術(shù)進行Web編程所需要的各方面的基礎(chǔ)知識,并從基本操作開始,循序漸進地介紹了開發(fā)Web應用程序需要用到的基本技術(shù)。采用通俗易懂的語言,一步一步、手把手地教會您各種技術(shù)的使用,宛如現(xiàn)場專家言傳身教。 2. 項目驅(qū)動,案例教學 本書不采用傳統(tǒng)的\"以概念解釋為主\"的方式,而采用\"以項目為驅(qū)動,實踐為主\"的方式描述完成每一個任務的方法和步驟。每一個任務的提出,都伴隨著一個完整的實例,讀者通過完成此實例,就能掌握相關(guān)的基本概念和技術(shù)。 3. 步驟詳細,圖文并茂 本書在介紹ASP.NET的各項技術(shù)時,采用了項目實踐的方式,且在講解中步驟詳細,圖文并茂,讀者只需要根據(jù)步驟一步步操作,邊學邊練,就可以掌握相關(guān)的技能,并從中找到學習ASP.NET的樂趣。 4. 結(jié)構(gòu)合理,符合軟件技術(shù)專業(yè)人才培養(yǎng)目標 作者在編寫此書時充分考慮了現(xiàn)代教育的特點,旨在培養(yǎng)具有較高水平、較高素質(zhì)的技能型人才。本書結(jié)構(gòu)合理,能讓讀者輕松上手,快速掌握相關(guān)內(nèi)容,全面提高學、練、用的能力。 在結(jié)構(gòu)上,本書先用少量篇幅介紹了ASP.NET技術(shù)的語言基礎(chǔ),使讀者在學習ASP.NET技術(shù)之前對相關(guān)知識有所了解。 在介紹ASP.NET技術(shù)時,作者并不急于解釋相關(guān)概念,而是將這些技術(shù)融入一個個小案例中,使讀者在實踐中進行探索、分析和創(chuàng)新,從而掌握這些理論知識。同時介紹了目前網(wǎng)絡比較流行的幾個網(wǎng)站功能模塊,讀者只需要作少許的修改和擴展,便可應用于實際項目中。 前 言 一、關(guān)于ASP.NET ASP.NET是微軟公司推出的Web開發(fā)平臺,是一種建立在公共語言運行庫(Common Language Runtime,CLR)上的編程框架,可用于在服務器上開發(fā)功能強大的Web應用程序。它是目前技術(shù)最先進、特征最豐富、功能最強大的Web開發(fā)平臺之一。ASP.NET自推出以來,具有開發(fā)效率高、使用簡單快捷、管理更簡單、全新的語言支持、安全性高等特點,是目前主流網(wǎng)絡編程技術(shù)之一。 ASP.NET中內(nèi)置了很多控件,在其他Web開發(fā)技術(shù)(如JSP)中需要費盡心思才能完成的功能,在ASP.NET中只需要簡單地套用相應的內(nèi)置控件即可完成。ASP.NET在數(shù)據(jù)庫連接方面做了很大的改進,新增的DataSource控件和GridView控件使得數(shù)據(jù)庫的操作更加簡捷方便。 二、本書結(jié)構(gòu) 本書在第1版的基礎(chǔ)上,進行了如下改進:采用目前市場上較流行的開發(fā)工具版本,版本更高,提供的功能更多;增加了IIS(Internet Information Services,互聯(lián)網(wǎng)信息服務)的安裝過程,以及網(wǎng)站的發(fā)布與部署;增加了DIV+CSS布局基礎(chǔ)知識,使得頁面的設計更輕松、美觀;將第1版中第5章頁面結(jié)構(gòu)與配置文件的內(nèi)容分散到其他章節(jié),并刪除了一些冗余的段落和文字;在第1章至第6章中,增加了多個實戰(zhàn)案例,便于在學習基礎(chǔ)知識的同時,掌握案例的設計與應用;在第7章中,增加了程序的調(diào)試過程,使讀者能更清晰地看到各個數(shù)據(jù)的變化過程;補全了第12章中其他所有功能的設計與實現(xiàn),使之成為一個功能齊全的Web應用程序;修正了第1版中部分程序源碼的筆誤,確保程序的正確性和可行性。 本書內(nèi)容由淺入深,首先介紹ASP.NET編程必須掌握的基本技術(shù),并安排了對該章知識點綜合應用的實戰(zhàn)案例,非常適合初學者入門學習;然后介紹實際開發(fā)中常用的模塊,這部分內(nèi)容適合初、中級讀者學習編程技術(shù);最后通過一個綜合實例講解實際項目的開發(fā)過程,其目的是快速提高讀者的實戰(zhàn)編程能力。 各章的主要內(nèi)容簡述如下。 第1章介紹網(wǎng)站發(fā)展歷史、.NET框架、Visual Studio開發(fā)環(huán)境、創(chuàng)建第一個ASP.NET程序、aspx文件和aspx.cs文件,以及發(fā)布和部署網(wǎng)站等內(nèi)容。 第2章介紹ASP.NET語言基礎(chǔ),包括C#語言基礎(chǔ)、XHTML標記語言、CSS簡介、DIV+CSS布局等內(nèi)容。 第3章介紹ASP.NET內(nèi)置對象,包括Page對象、Response對象、Request對象、Server對象、Application對象、Session對象和Cookie對象等內(nèi)容。 第4章介紹Web服務器控件,包括基本控件、選擇控件、列表控件和高級控件等內(nèi)容。 第5章介紹驗證控件的使用方法。 第6章介紹常用的網(wǎng)頁布局技術(shù),包括ASP.NET用戶控件、母版頁和內(nèi)容頁,以及導航控件等內(nèi)容。 第7章介紹Web數(shù)據(jù)庫編程基礎(chǔ),包括SQL語言,ADO.NET概述,Connection對象,Command對象,DataReader對象,DataAdapter對象,DataSet對象,插入、編輯、刪除數(shù)據(jù),數(shù)據(jù)綁定,數(shù)據(jù)控件,配置文件Web.config,以及程序調(diào)試等內(nèi)容。 第8章介紹開發(fā)Web應用程序常用的模塊--注冊登錄模塊,并詳細介紹驗證碼生成的過程。 第9章介紹開發(fā)Web應用程序常用的模塊--在線投票模塊,并詳細介紹XML文檔的使用,以及以圖片形式顯示結(jié)果的過程。 第10章介紹開發(fā)Web應用程序常用的模塊--留言板模塊,并詳細介紹留言板的制作過程,為后面論壇系統(tǒng)的制作奠定基礎(chǔ)。 第11章介紹開發(fā)Web應用程序常用的模塊--文件上傳下載模塊,并詳細介紹數(shù)據(jù)庫保存圖片數(shù)據(jù)的過程。 第12章介紹使用Visual Studio與SQL Server設計一個完整的實例--BBS論壇系統(tǒng),詳細講解一個項目的開發(fā)過程,使讀者對Web應用程序的開發(fā)有一個較系統(tǒng)的理解。 三、本書特點 1. 循序漸進,通俗易懂 本書所講的內(nèi)容避開了晦澀難懂的理論知識,但又覆蓋了使用ASP.NET技術(shù)進行Web編程所需要的各方面的基礎(chǔ)知識,并從基本操作開始,循序漸進地介紹了開發(fā)Web應用程序需要用到的基本技術(shù)。采用通俗易懂的語言,一步一步、手把手地教會您各種技術(shù)的使用,宛如現(xiàn)場專家言傳身教。 2. 項目驅(qū)動,案例教學 本書不采用傳統(tǒng)的\"以概念解釋為主\"的方式,而采用\"以項目為驅(qū)動,實踐為主\"的方式描述完成每一個任務的方法和步驟。每一個任務的提出,都伴隨著一個完整的實例,讀者通過完成此實例,就能掌握相關(guān)的基本概念和技術(shù)。 3. 步驟詳細,圖文并茂 本書在介紹ASP.NET的各項技術(shù)時,采用了項目實踐的方式,且在講解中步驟詳細,圖文并茂,讀者只需要根據(jù)步驟一步步操作,邊學邊練,就可以掌握相關(guān)的技能,并從中找到學習ASP.NET的樂趣。 4. 結(jié)構(gòu)合理,符合軟件技術(shù)專業(yè)人才培養(yǎng)目標 作者在編寫此書時充分考慮了現(xiàn)代教育的特點,旨在培養(yǎng)具有較高水平、較高素質(zhì)的技能型人才。本書結(jié)構(gòu)合理,能讓讀者輕松上手,快速掌握相關(guān)內(nèi)容,全面提高學、練、用的能力。 在結(jié)構(gòu)上,本書先用少量篇幅介紹了ASP.NET技術(shù)的語言基礎(chǔ),使讀者在學習ASP.NET技術(shù)之前對相關(guān)知識有所了解。 在介紹ASP.NET技術(shù)時,作者并不急于解釋相關(guān)概念,而是將這些技術(shù)融入一個個小案例中,使讀者在實踐中進行探索、分析和創(chuàng)新,從而掌握這些理論知識。同時介紹了目前網(wǎng)絡比較流行的幾個網(wǎng)站功能模塊,讀者只需要作少許的修改和擴展,便可應用于實際項目中。 通過對本書的閱讀,讀者應能達到如下能力目標。 。1) 對簡單網(wǎng)站進行設計、編輯、調(diào)試、運行的能力。 。2) 對ASP.NET各類控件的使用能力。 (3) 對網(wǎng)站數(shù)據(jù)庫進行管理和維護的能力。 。4) 應用所學知識開發(fā)三層架構(gòu)應用程序的能力。 四、本書適用對象 本書可作為高等院校計算機相關(guān)專業(yè)的教材,也可供具有一定編程經(jīng)驗又需要迅速熟悉ASP.NET的讀者參考,同時也適合自學ASP.NET的讀者閱讀。 本書由年輕而富有經(jīng)驗的.NET軟件技術(shù)研究小組組織編寫,由魏菊霞任主編,李志中、謝云任副主編,相信本書能夠為讀者順利進入ASP.NET編程世界提供幫助。 本書的編寫得到了學院領(lǐng)導的大力支持,在此表示衷心的感謝。 盡管作者已經(jīng)盡了各種努力來保證語言和代碼中不出現(xiàn)錯誤,但由于編寫時間倉促,水平有限,書中疏漏和不足之處在所難免,懇請各位讀者和專家批評指正,提出寶貴意見和建議。 編 者 第1章 新手入門 1 1.1 網(wǎng)站發(fā)展歷史 1 1.2 .NET框架 5 1.3 Visual Studio開發(fā)環(huán)境 6 1.4 創(chuàng)建第一個ASP.NET應用程序 12 1.5 aspx文件和aspx.cs文件 16 1.6 發(fā)布和部署網(wǎng)站 20 小結(jié) 25 習題 25 第2章 ASP.NET語言基礎(chǔ) 27 2.1 C#語言基礎(chǔ) 27 2.2 XHTML標記語言 38 2.3 CSS簡介 42 2.4 DIV+CSS布局 45 2.5 實戰(zhàn):猜數(shù)游戲 50 小結(jié) 59 習題 59 第3章 ASP.NET內(nèi)置對象 62 3.1 ASP.NET 內(nèi)置對象概述 62 3.2 Page對象 62 3.3 Response對象 67 3.4 Request對象 71 3.5 Server對象 76 3.6 Application對象 79 3.7 Session對象 81 3.8 Cookie對象 84 3.9 實戰(zhàn)1:統(tǒng)計網(wǎng)站在線人數(shù) 85 3.10 實戰(zhàn)2:用戶登錄 87 小結(jié) 90 習題 90 第4章 Web服務器控件 92 4.1 HTML標記、HTML控件和 Web控件 92 4.2 HTML控件概述 94 4.3 Web控件概述 96 4.4 基本控件 97 4.5 選擇控件 100 4.6 列表控件 105 4.7 高級控件 110 4.8 實戰(zhàn):用戶注冊頁面 121 小結(jié) 129 習題 129 第5章 驗證控件 131 5.1 驗證控件概述 131 5.2 RequiredFieldValidator控件的功能 和使用 132 5.3 CompareValidator控件的功能 和使用 134 5.4 RangeValidator控件的功能 和使用 136 5.5 RegularExpressionValidator控件的 功能和使用 138 5.6 CustomValidator控件的功能 和使用 140 5.7 ValidatorSummary控件的功能 和使用 141 小結(jié) 143 習題 143 第6章 網(wǎng)頁布局技術(shù) 145 6.1 ASP.NET用戶控件 145 6.2 母版頁和內(nèi)容頁 150 6.3 導航控件 154 小結(jié) 157 習題 157 第7章 Web數(shù)據(jù)庫編程基礎(chǔ) 159 7.1 SQL語言 159 7.2 ADO.NET概述 164 7.3 Connection對象 165 7.4 Command對象 167 7.5 DataReader對象 168 7.6 DataAdapter對象和DataSet對象 171 7.7 插入、編輯和刪除數(shù)據(jù) 175 7.8 數(shù)據(jù)綁定 182 7.9 數(shù)據(jù)控件 184 7.10 配置文件Web.config 206 7.11 程序調(diào)試 209 小結(jié) 212 習題 212 第8章 注冊登錄模塊 214 8.1 設計思想 214 8.2 ASP.NET的圖像處理 215 8.3 注冊登錄模塊的實現(xiàn)過程 218 小結(jié) 234 習題 234 第9章 在線投票模塊 236 9.1 XML文檔 236 9.2 在線投票模塊設計思想 245 9.3 在線投票模塊的實現(xiàn) 245 小結(jié) 252 習題 252 第10章 留言板模塊 254 10.1 留言板模塊設計思想 254 10.2 數(shù)據(jù)庫設計 255 10.3 留言板模塊的實現(xiàn) 256 小結(jié) 277 習題 277 第11章 文件上傳下載模塊 279 11.1 文件上傳下載的設計思想 279 11.2 設計前的準備 280 11.3 上傳文件至服務器 282 11.4 從服務器下載文件 285 11.5 上傳圖片至數(shù)據(jù)庫 287 小結(jié) 296 習題 296 第12章 BBS論壇系統(tǒng) 298 12.1 設計思路 298 12.2 設計前的準備 299 12.3 數(shù)據(jù)庫設計 303 12.4 設計實體(Model)層 305 12.5 設計數(shù)據(jù)訪問(DAL)層 311 12.6 設計業(yè)務邏輯(BLL)層 331 12.7 主要功能界面(Web UI層)的實現(xiàn) 333 小結(jié) 365 習題 365 參考文獻 367 第3章 ASP.NET內(nèi)置對象 本章將詳細介紹ASP.NET的常用內(nèi)置對象,主要包括Page對象、Response對象、Request對象、Server對象、Application對象等。這些對象是用.NET框架中封裝好的類來實現(xiàn)的,在ASP.NET頁面初始化時,這些對象就已經(jīng)自動創(chuàng)建了,故在程序中可以直接使用,不需要再實例化。這些內(nèi)置對象為Web編程提供了豐富的功能,本章將重點介紹這些內(nèi)置對象的主要用途和使用方法。 本章學習目標: * 了解ASP.NET內(nèi)置對象的種類。 * 掌握各種內(nèi)置對象的屬性和方法,以及在實際編程中的主要用途。 3.1 ASP.NET 內(nèi)置對象概述 ASP.NET包括Page、Response、Request、Application、Server、Session、Cookies 等多個內(nèi)置對象,每個對象都有自己的屬性、方法和事件。 下面簡單介紹這些內(nèi)置對象的功能,如表3-1所示。 表3-1 ASP.NET的內(nèi)置對象及其功能 對 象 名 功能說明 Page對象 用來設置與網(wǎng)頁有關(guān)的屬性、方法和事件 Response對象 用來向瀏覽器或客戶端輸出信息 Request對象 用來獲取從瀏覽器或客戶端返回的信息 Application對象 用來共享多個用戶的全局信息 Server對象 用來提供服務器端的一些屬性和方法 Session對象 用來存儲某些特定用戶的共享信息 Cookies對象 用來設置或獲取Cookie信息 3.2 Page 對 象 Page對象是由System.Web.UI命名空間中的Page類來實現(xiàn)的,當瀏覽器訪問Web頁面時,Web頁面被編譯成Page對象,緩存在服務器內(nèi)存中。Page對象用來設置與當前網(wǎng)頁有關(guān)的屬性、方法和事件。其常用的屬性、方法和事件如表3-2所示。 表3-2 Page對象常用的屬性、方法和事件 名 稱 功能說明 IsPostBack屬性 獲取一個值,該值用來判斷該頁是否是第一次被加載 IsVaid 屬性 獲取一個值,該值用來判斷該頁是否通過驗證 Validators屬性 獲取請求的網(wǎng)頁所包含的全部驗證控件集合 DataBind方法 將數(shù)據(jù)源綁定到指定的服務器控件 Dispose方法 強制服務器控件在內(nèi)存釋放之前執(zhí)行清理操作 FindControl方法 在頁面上搜索指定的服務器控件 Init事件 設置頁面或控件的初始值 Load事件 網(wǎng)頁被加載時發(fā)生 Unload事件 關(guān)閉文件、釋放對象等時觸發(fā) 3.2.1 IsPostBack屬性 IsPostBack屬性經(jīng)常用來判斷網(wǎng)頁是否是第一次訪問,當獲取的值為false時,表示當前頁是首次加載或訪問;當該值為true時則不是。從下面的【例3-1】中可以看出IsPostBack屬性的用途。 3.2.2 Init事件 Init事件用來設置頁面或控件的初始值,當ASP.NET頁面第一次被訪問時,將觸發(fā)Page對象的Init事件,對應的事件處理方法為Page_Init(),同一個頁面只會被觸發(fā)一次Init事件。 3.2.3 Load事件 Load事件又稱加載或載入事件,當對象的相關(guān)數(shù)據(jù)裝載到內(nèi)存中時觸發(fā)該事件。即當頁面被加載時,就會觸發(fā)Page對象的Load事件。Load事件也可用來設置頁面或者控件的初始值,它與Init事件的主要區(qū)別在于:每次加載該頁面時,都會觸發(fā)其Load事件,因此一個頁面的Load事件可能被觸發(fā)多次,而Init事件只會在頁面第一次被訪問時觸發(fā)一次。 下面通過一個實例來介紹Page對象的這些屬性和事件的用途。 【例3-1】 設計一個下拉列表框(由DropDownList控件實現(xiàn)),下拉列表框中有一些可選的城市,當單擊【提交】按鈕時,將向下拉列表框中添加用戶輸入的城市。具體操作步驟如下。 。1) 打開Visual Studio開發(fā)工具, 新建一個網(wǎng)站ch03,在解決方案資源管理器中,右擊站點文件,在彈出的快捷菜單中選擇【添加新項】命令,添加一個新的Web窗體,命名為eg03_1.aspx。 。2) 打開【設計】窗口,在【表】菜單中選擇【插入表】命令,在【插入表格】對話框中設置行數(shù)、列數(shù)等參數(shù),設置好參數(shù)后,單擊【確定】按鈕添加一個3行2列的表格,如圖3-1所示。 圖3-1 設置插入表格參數(shù) 。3) 選中表格的第一行,單擊鼠標右鍵,在彈出的快捷菜單中選擇【修改】|【合并單元格】命令,并輸入\"輸入要添加的城市:\",打開工具箱,在表格的第二行添加1個TextBox控件、1個Button按鈕,第三行添加1個DropDownList控件,各控件的id屬性為默認值,設計界面如圖3-2所示(本章節(jié)添加的所有控件的具體內(nèi)容將在第4章中進行介紹)。 圖3-2 設計界面 。4) 雙擊eg3_1.aspx頁面的空白位置,打開eg3_1.aspx.cs文件,在Page對象的Load事件中添加的處理代碼如下。 protected void Page_Load(object sender, EventArgs e) { //往下拉列表框中添加值 DropDownList1.Items.Add(\"廣州\"); DropDownList1.Items.Add(\"佛山\"); DropDownList1.Items.Add(\"深圳\"); DropDownList1.Items.Add(\"東莞\"); } 這段代碼表示當頁面第一次被加載時,下拉列表框中將添加4個選項,分別是\"廣州\"\"佛山\"\"深圳\"\"東莞\"。 。5) 切換到設計頁面eg3_1.aspx,雙擊【添加】按鈕,添加Click事件的處理代碼如下。 protected void Button1_Click(object sender, EventArgs e) { //將輸入文本框的值添加到下拉列表框中 DropDownList1.Items.Add(TextBox1.Text); } 。6) 保存文件,運行程序,進入如圖3-3所示的界面。 圖3-3 運行界面(1) 。7) 在輸入文本框中輸入要添加的城市,如\"湛江\",單擊【添加】按鈕。查看下拉列表框中的選項,發(fā)現(xiàn)除了剛才添加的城市\(zhòng)"湛江\"外,之前的4個選項又重復添加了一次,如圖3-4所示。 圖3-4 運行界面(2) 這是因為當Web頁面第一次執(zhí)行時,觸發(fā)了Page對象的Load事件,給下拉列表框添加了4個選項,當單擊【提交】按鈕時,Page對象的Load事件被再次觸發(fā),所以又重復地添加了這4個選項。 解決這個問題的方法一:在Page對象的Load()事件中,用IsPostBack屬性來判斷Web頁面是否是第一次被加載,修改后的代碼如下。 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //往下拉列表框中添加值 DropDownList1.Items.Add(\"廣州\"); DropDownList1.Items.Add(\"佛山\"); DropDownList1.Items.Add(\"深圳\"); DropDownList1.Items.Add(\"東莞\"); } } 解決這個問題的方法二:將Load事件改為Init事件,問題也可以得到解決,因為Init事件對同一頁面在初始化時只觸發(fā)一次,當單擊【添加】按鈕時,Init事件將不再被觸發(fā)。 ……
你還可能感興趣
我要評論
|