版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第15章Web應(yīng)用程序設(shè)計,15.1 ASP.NET概述 15.2 開發(fā)Web應(yīng)用程序的準(zhǔn)備工作 15.3 創(chuàng)建一個簡單的Web應(yīng)用程序 15.4 基本ASP.NET服務(wù)器控件 15.5 高級ASP.NET服務(wù)器端控件,15.1 ASP.NET概述,15.1.1 ASP.NET的發(fā)展歷程 2000年ASP.NET 1.0正式發(fā)布。 2003年ASP.NET升級為1.1版本。 2005年11月微軟公司又發(fā)布了ASP.NET 2.0。 ASP.NET 2.0技術(shù)增加了大量方便、實用的新特性,是一種建立在公共語言運行庫上的編程框架,可用于在服務(wù)器上開發(fā)功能強大的Web應(yīng)用程序。,15.1.2. AS
2、PNET網(wǎng)頁的運行方式 ASP.NET頁面作為代碼在服務(wù)器上運行。因此,要得到處理,頁面必須配置為當(dāng)使用者觸發(fā)交互時提交到服務(wù)器。每次頁面都會傳回服務(wù)器,以便再次運行其服務(wù)器代碼,然后向使用者呈現(xiàn)其自身的新版本。其處理循環(huán)如下: (1)使用者請求頁面。頁面第一次運行時,執(zhí)行初步處理。 (2)頁面將標(biāo)記動態(tài)呈現(xiàn)到瀏覽器中,使用者看到的網(wǎng)頁類似于其他任何網(wǎng)頁。 (3)使用者輸入信息或從可用選項中進(jìn)行選擇,然后回車或單擊按鈕確定。 (4)頁面發(fā)送到Web服務(wù)器中。 (5)在Web服務(wù)器上,該頁再次被運行。并且可在頁上使用使用者輸入或選擇的信息。 (6)頁面執(zhí)行用戶通過編程所要實現(xiàn)的操作。 (7)頁面
3、將其自身發(fā)送給使用者的瀏覽器呈現(xiàn)該頁面。,注意與Windows窗體運行的區(qū)別!,15.2 開發(fā)Web應(yīng)用程序的準(zhǔn)備工作 15.2.1 安裝Web服務(wù)器 安裝Web服務(wù)器實際上就是安裝IIS服務(wù)器。 IIS是Internet Information Server的縮寫,是Windows服務(wù)器操作系統(tǒng)中最重要的Web技術(shù)。,15.2.2 創(chuàng)建IIS的虛擬目錄 (1)首先打開“控制面板”中的“管理工具”頁面,可以看到“Internet服務(wù)管理器”圖標(biāo)。雙擊該圖標(biāo),將打開“Internet信息服務(wù)”對話框。,(2)用鼠標(biāo)右擊 “默認(rèn)網(wǎng)站”,從彈出的快捷菜單中選擇“新建”|“虛擬目錄”命令。,(3)打開
4、創(chuàng)建虛擬目錄向?qū)?,單擊“下一步”按鈕,,(4)在窗口中的“別名”文本框中輸入要建立虛擬目錄的名稱,這里輸入MyWeb。,(5)單擊“下一步”按鈕,在打開的窗口中單擊“瀏覽”按鈕,選擇要建立虛擬目錄的實際文件夾。這里選擇H:MyWeb文件夾,單擊“下一步”按鈕。,(6)設(shè)置虛擬目錄的訪問權(quán)限。保持默認(rèn)值。單擊“下一步”按鈕。,(7)在“默認(rèn)網(wǎng)站”節(jié)點下有了一個MyWeb項,鼠標(biāo)右擊該項,在彈出的快捷菜單中選擇“屬性”命令。,(8)在打開的窗口中選擇“目錄安全性”選項卡,打開如下圖所示的窗口,單擊“編輯”按鈕。,(9)打開如下圖所示的對話框,勾選“集成Windows身份驗證”復(fù)選框。單擊“確定”按
5、鈕。,15.3 創(chuàng)建一個簡單的Web應(yīng)用程序,【例15.1】 創(chuàng)建一個Web應(yīng)用程序,根據(jù)用戶輸入Access數(shù)據(jù)庫名稱(在網(wǎng)站主目錄的App_Data文件夾中查找該數(shù)據(jù)庫文件)連接到該數(shù)據(jù)庫。,操作步驟如下: (1)啟動Microsoft Visual Studio 2005,選擇“文件”|“新建網(wǎng)站”命令,打開“新建網(wǎng)站”對話框,在“Visual Studio己安裝的模板”列表框中選擇“ASP.NET網(wǎng)站”,在“位置”下拉列表中選擇HTTP,在“語言”下拉列表中選擇Visual C#。,(2)單擊“瀏覽”按鈕,打開 “選擇位置”對話框,從中選擇MyWeb作為其保存的位置,單擊“打開”按鈕,
6、再單擊“確定”按鈕。,(3)打開Web窗體設(shè)計對話框,在解決方案管理器中可以看到自動生成一個名稱為Default.aspx的Web窗體文件。另外,還自動生成了一個App_Data文件夾。在左邊的“工具箱”中可以將看到各種控件。,(4)為了能夠打開school.mdb數(shù)據(jù)庫,將該文件復(fù)制到H:MyWeb的App_Data文件夾中。單擊解決方案管理器工具欄上的按鈕,會看到school.mdb文件出現(xiàn)在解決方案管理器中。,(5)單擊中部下方的按鈕,切換到Web窗體設(shè)計模式,進(jìn)行可視化網(wǎng)頁設(shè)計。,(6)雙擊button1控件,出現(xiàn)代碼編輯窗口,設(shè)計其事件過程。最后設(shè)計整個Web窗體的代碼如下:,usi
7、ng System; using System.Data; using System.Data.OleDb;/新增 using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;,其余引用都是系統(tǒng)自加的,public partial class _Defau
8、lt : System.Web.UI.Page protected void Button1_Click(object sender, EventArgs e) OleDbConnection myconn = new OleDbConnection(); myconn.ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source = + Server.MapPath(App_Data) + + TextBox1.Text; myconn.Open(); if (myconn.State = ConnectionState.Op
9、en) Label2.Text = Access數(shù)據(jù)庫連接成功; else Label2.Text = 不能連接到Access數(shù)據(jù)庫; myconn.Close(); ,(7)單擊按鈕或按F5鍵,第一次運行時將有提示對話框出現(xiàn),其界面如下圖所示。,選中修改項(默設(shè)值),單擊“確定”按鈕,出現(xiàn)圖瀏覽器界面,在文本框中輸入school.mdb,單擊“連接”命令按鈕,其運行界面如下圖所示,表示連接成功。,(9)啟動IE瀏覽器,輸入地址為http:/localhost/myweb,按回車鍵后會啟動本網(wǎng)站。這樣就隱藏了本網(wǎng)站的實際地址H:MyWeb,從而防止對本網(wǎng)站程序的攻擊,這就是建立虛擬目錄的好處。
10、,15.4 基本ASP.NET服務(wù)器控件,15.4.1服務(wù)器控件概述 1. 什么是服務(wù)器控件 服務(wù)器控件都包含在ASP.NET頁面中。當(dāng)運行頁面時,.NET執(zhí)行引擎將根據(jù)控件對象和程序邏輯完成一定的功能。 根據(jù)服務(wù)器控件定義方式,可分為HTML服務(wù)器控件、Web標(biāo)準(zhǔn)服務(wù)器控件和自定義服務(wù)器控件:,2. 服務(wù)器控件的屬性、方法和事件,3. 服務(wù)器控件的相關(guān)操作 (1)向頁面中添加服務(wù)器控件 可以通過以下3種方法添加服務(wù)器控件。,雙擊實現(xiàn)添加控件:在Web頁面上,把光標(biāo)停留在要添加控件的位置上。在工具箱中找到想要添加的服務(wù)器控件然后雙擊,服務(wù)器控件就會呈現(xiàn)在Web頁面上光標(biāo)停留的位置。 拖曳實現(xiàn)添
11、加控件:在工具箱中找到想要添加的控件,然后拖曳到Web頁想要添加控件的位置上。 使用代碼添加控件:還可以通過添加代碼來實現(xiàn)添加控件。用戶可以在HTML視圖下,在想要添加控件的位置輸入相應(yīng)控件的代碼。,(2)刪除頁面中服務(wù)器控件 刪除頁面中的控件有兩種方法:一種方法是選中該控件,按鍵盤上的Delete鍵;另一種方法是選擇該控件并單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“刪除”命令。,15.4.2Label、Button和TextBox控件 Label服務(wù)器控件提供了一種以編程方式設(shè)置 Web 窗體頁中文本的方法,這些文本在頁面上是靜態(tài)的;用戶無法編輯。還可以將 Label 控件的Text屬性綁定到數(shù)
12、據(jù)源,以在頁面上顯示數(shù)據(jù)庫信息。 Button服務(wù)器控件通過用戶操作完成特定工作和事務(wù)邏輯。其常用的事件有Click(在單擊Button控件時觸發(fā))。 TextBox服務(wù)器控件為用戶提供了一種向Web窗體輸入信息(包括文本、數(shù)字和日期)的方法。通過對TextBox的TextMode屬性進(jìn)行設(shè)置可以得到不同的TextBox。另外,當(dāng)用戶更改TextBox的文本時觸發(fā)TextChanged事件。,15.4.3DropDownList控件 DropDownList(下拉列表框)服務(wù)器控件允許用戶從預(yù)定義列表中選擇某一項,其項列表在用戶單擊下拉列表以前一直保持隱藏狀態(tài)。,【例15.2】 設(shè)計一個Web
13、窗體,當(dāng)用戶從下拉列表中選擇學(xué)生姓名和班號時,程序?qū)⒂脩暨x擇的學(xué)生姓名和班號顯示出來。,WebForm2 事件過程:,public partial class WebForm2 : System.Web.UI.Page protected void Page_Init(object sender, EventArgs e) OleDbConnection myconn = new OleDbConnection(); myconn.ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source = + Server.MapPath
14、(App_Data) + school.mdb; OleDbCommand mycmd = new OleDbCommand( SELECT 姓名 FROM student, myconn); myconn.Open(); OleDbDataReader myreader = mycmd.ExecuteReader();,DropDownList1.DataSource = myreader; DropDownList1.DataTextField = 姓名; DropDownList1.DataBind(); /上面的綁定在調(diào)用該方法時才執(zhí)行 OleDbCommand mycmd1 = ne
15、w OleDbCommand(SELECT distinct 班號 FROM student, myconn); OleDbDataReader myreader1 = mycmd1.ExecuteReader(); DropDownList2.DataSource = myreader1; DropDownList2.DataTextField = 班號; DropDownList2.DataBind(); /上面的綁定在調(diào)用該方法時才執(zhí)行 myreader.Close(); myreader1.Close(); myconn.Close(); Label3.Text = ; ,protec
16、ted void Button1_Click(object sender, EventArgs e) Label3.Text = 學(xué)生 + DropDownList1.Text + 屬于 + DropDownList2.SelectedValue + 班; ,運行界面,15.4.4CheckBox、CheckBoxList、RadioButton和RadioButtonList控件 CheckBox(復(fù)選框)和CheckBoxList(復(fù)選框組)服務(wù)器控件為用戶提供了一種在真/假、是/否或開/關(guān)選項之間切換的方法。前者包含一個復(fù)選框,后者是由一組復(fù)選框組成。,RadioButton(單選按鈕)
17、和RadioButtonList(單選按鈕組)服務(wù)器控件允許用戶從一個預(yù)定義的選項中選擇一項。,【例15.3】 設(shè)計一個Web窗體,用戶可以選擇學(xué)生相關(guān)信息并提交。,WebForm3 事件過程:,protected void Button1_Click(object sender, EventArgs e) string result=; /判斷性別 if (RadioButton1.Checked) result += 性別:女; /為屏幕換行 else result += 性別:男; /判斷年齡 if (RadioButtonList1.SelectedItem != null) resu
18、lt += 年齡: + RadioButtonList1.SelectedItem.Text + ;,/讀取愛好信息 if (CheckBoxList1.SelectedIndex -1) result += 愛好:; for (int i = 0;i; /是否接受郵件信息 if (CheckBox1.Checked) result += 該生是三好生; Label1.Text = result; ,運行界面,15.4.5數(shù)據(jù)驗證控件 在ASP.NET中,提供了以下6種數(shù)據(jù)驗證控件(它們位于“工具箱”的“驗證”部分,可以拖放到窗體上):,15.4.5數(shù)據(jù)驗證控件 在ASP.NET中,提供了以下
19、6種數(shù)據(jù)驗證控件(它們位于“工具箱”的“驗證”部分):,RequiredFieldValidator:又稱非空驗證控件。確保用戶在 Web 窗體頁上輸入數(shù)據(jù)時不會跳過必填字段,也就是說,檢查被驗證控件的輸入是否為空,如果為空,則在網(wǎng)頁中顯示提示信息。 CompareValidator:又稱比較驗證控件。將用戶的輸入與常數(shù)值(由ValueToCompare屬性指定)、另一個控件(由ControlToCompare屬性指定)的屬性值進(jìn)行比較,若不相同,則在網(wǎng)頁中顯示提示信息。,RangeValidator:又稱范圍驗證控件。確保用戶輸入的值在指定的上下限范圍之內(nèi),當(dāng)輸入不在驗證的范圍內(nèi)時,則在網(wǎng)頁
20、中顯示提示信息。 RegularExpressionValidator:又稱正則表達(dá)式驗證控件。確保用戶輸入信息匹配正則表達(dá)式指定的模式(由ValidationExpression屬性指定),例如,要驗證用戶輸入的是否為E-mail地址,只要使用E-mail的正則表達(dá)式來驗證用戶輸入即可,若不符合,則在網(wǎng)頁中顯示提示信息。 CustomValidator:又稱自定義驗證控件。確保用戶輸入的內(nèi)容符合自己創(chuàng)建的驗證邏輯。 ValidationSummary:又稱錯誤總結(jié)控件。提供一個集中顯示驗證錯誤信息的地方,將本網(wǎng)頁中所有驗證控件錯誤信息組織好并一同顯示出來。,驗證控件重要的屬性,【例15.4】 設(shè)計一個Web窗體,說明數(shù)據(jù)驗證控件的使用方法。,WebForm4,protected void Page_Init(object sender, EventArgs e) Label1.Text = ; protected void Button1_Click(object sender, EventArgs e) if (Page.IsValid ) /用戶輸入均有效 Label1.Text += TextBox1.Text + ; Label
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年江蘇省鎮(zhèn)江市中考語文真題卷含答案解析
- 幼兒園保育工作計劃總結(jié)
- 2025年楚雄市高壓電工證理論考試練習(xí)題含答案
- 安環(huán)部員工2025年度工作總結(jié)模版
- 小學(xué)六年級語文教師教學(xué)工作總結(jié)
- 腳手架工程量計算方法
- 2025年市場監(jiān)督管理局業(yè)務(wù)考試復(fù)習(xí)題集及答案解析
- 花卉栽培試題庫及答案
- 2025年社區(qū)公共衛(wèi)生服務(wù)培訓(xùn)試題集含答案
- 電工三級(高級工)試題含答案
- 2025年大學(xué)大一(法學(xué))法理學(xué)試題及答案
- 膽囊癌課件教學(xué)課件
- 廣西2025年高等職業(yè)教育考試全區(qū)模擬測試 能源動力與材料 大類試題及逐題答案解說
- 2026江蘇省公務(wù)員考試公安機關(guān)公務(wù)員(人民警察)歷年真題匯編附答案解析
- 孕婦貧血教學(xué)課件
- 超市冷庫應(yīng)急預(yù)案(3篇)
- 5年(2021-2025)山東高考生物真題分類匯編:專題17 基因工程(解析版)
- 2025年10月自考00610高級日語(二)試題及答案
- 新華資產(chǎn)招聘筆試題庫2025
- 2025年中國潛孔鉆機行業(yè)細(xì)分市場研究及重點企業(yè)深度調(diào)查分析報告
- 食品經(jīng)營場所及設(shè)施設(shè)備清洗消毒和維修保養(yǎng)制度
評論
0/150
提交評論