ASP.NET-2.0簡(jiǎn)明教程ppt課件匯總(完整版)_第1頁
ASP.NET-2.0簡(jiǎn)明教程ppt課件匯總(完整版)_第2頁
ASP.NET-2.0簡(jiǎn)明教程ppt課件匯總(完整版)_第3頁
ASP.NET-2.0簡(jiǎn)明教程ppt課件匯總(完整版)_第4頁
ASP.NET-2.0簡(jiǎn)明教程ppt課件匯總(完整版)_第5頁
已閱讀5頁,還剩146頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第1章 ASP.NET 2.0開發(fā)基礎(chǔ)1.1 ASP.NET簡(jiǎn)介 .NET是微軟公司發(fā)布的新一代的系統(tǒng)、服務(wù)和編程平臺(tái),主要由.NET Framework和Microsoft Visual Studio .NET開發(fā)工具組成。 .NET Framework是一種新的計(jì)算平臺(tái),它包含了操作系統(tǒng)上軟件開發(fā)的所有層,簡(jiǎn)化了在高度分布式Internet環(huán)境中的應(yīng)用程序開發(fā)。.NET Framework主要包括兩個(gè)最基本的內(nèi)核,即公共語言運(yùn)行庫(Common Language Runtime,簡(jiǎn)稱CLR)和.NET Framework基本類庫,它們?yōu)?NET平臺(tái)的實(shí)現(xiàn)提供了底層技術(shù)支持。公共語言運(yùn)行庫是

2、.NET Framework 的基礎(chǔ),是.NET Framework的運(yùn)行時(shí)環(huán)境。NET Framework 的另一個(gè)主要組件是類庫,它是一個(gè)綜合性的面向?qū)ο蟮目芍赜妙愋图稀?.1.1 .NET簡(jiǎn)介1.1 ASP.NET簡(jiǎn)介 ASP.NET網(wǎng)頁在任何瀏覽器或客戶端設(shè)備中向用戶提供信息,并使用服務(wù)器端代碼來實(shí)現(xiàn)應(yīng)用程序邏輯。使用ASP.NET網(wǎng)頁可以為網(wǎng)站創(chuàng)建動(dòng)態(tài)內(nèi)容。通過使用靜態(tài) HTML頁(.htm或.html文件),服務(wù)器讀取文件并將該文件按原樣發(fā)送到瀏覽器,以此來滿足Web請(qǐng)求。相比之下,當(dāng)用戶請(qǐng)求ASP.NET網(wǎng)頁(.aspx文件)時(shí),該頁則作為程序在Web服務(wù)器上運(yùn)行。該頁運(yùn)行時(shí),

3、可以執(zhí)行網(wǎng)站要求的任何任務(wù),包括計(jì)算值、讀寫數(shù)據(jù)庫信息或者調(diào)用其他程序。該頁動(dòng)態(tài)地生成標(biāo)記(HTML或另一種標(biāo)記語言中的元素),并將該標(biāo)記作為動(dòng)態(tài)輸出發(fā)送到瀏覽器。 ASP.NET頁面作為代碼在服務(wù)器上運(yùn)行。因此,要得到處理,頁面必須在用戶單擊按鈕(或者當(dāng)用戶選中復(fù)選框或與頁面中的其他控件交互)時(shí)提交到服務(wù)器。每次頁面都會(huì)提交回自身,以便它可以再次運(yùn)行其服務(wù)器代碼,然后向用戶呈現(xiàn)其自身的新版本。1.1.2 ASP.NET頁面與Web服務(wù)器的交互過程1.2 建立ASP.NET程序的運(yùn)行環(huán)境 在Windows 2000上安裝的IIS的版本號(hào)是5.0,在Windows xp上安裝的IIS的版本號(hào)是5

4、.1,除此之外,這兩種安裝過程的區(qū)別不大。需要注意的是,不能在Windows xp home版安裝IIS,因此不能在其上運(yùn)行ASP.NET。 1.2.1安裝IIS Web服務(wù)器1.2 建立ASP.NET程序的運(yùn)行環(huán)境 虛擬目錄相當(dāng)于物理目錄在Web服務(wù)器機(jī)器上的別名,它不僅使用戶避免了冗長(zhǎng)的URL,也是一種很好的安全措施,因?yàn)樘摂M目錄對(duì)所有瀏覽者隱藏了物理目錄結(jié)構(gòu) 。 創(chuàng)建虛擬目錄之后,還需要對(duì)虛擬目錄賦予合適的權(quán)限,如果權(quán)限太小,則許多操作不能執(zhí)行,網(wǎng)站的功能會(huì)受到限制。如果權(quán)限太大,則會(huì)帶來安全風(fēng)險(xiǎn)。1.2.2管理Web服務(wù)器的目錄1.2 建立ASP.NET程序的運(yùn)行環(huán)境 1 Visual

5、 Studio 2005集成開發(fā)環(huán)境簡(jiǎn)介 Visual Studio 2005開發(fā)環(huán)境中主要包括:文本編輯器、工具箱、菜單、工具條、解決方案管理器、資源管理器和屬性窗體等。如下頁圖所示。1.2.3配置集成開發(fā)環(huán)境圖 集成開發(fā)環(huán)境六、刪除表中的記錄 2 配置集成開發(fā)環(huán)境 每個(gè)程序員都有自己的風(fēng)格,Visual Studio 2005給我們提供了個(gè)性化的集成開發(fā)環(huán)境,讀者可以按照自己的習(xí)慣設(shè)置開發(fā)環(huán)境。為了在任何一臺(tái)計(jì)算機(jī)上都使用符合自己習(xí)慣的集成開發(fā)環(huán)境,讀者可以把自己設(shè)置的集成開發(fā)環(huán)境保存下來。1.2 建立ASP.NET程序的運(yùn)行環(huán)境1.2.3配置集成開發(fā)環(huán)境第2章 C#2.0程序設(shè)計(jì)基礎(chǔ)2.

6、1 數(shù)據(jù)類型 數(shù)值類型主要包括整數(shù)、浮點(diǎn)數(shù)和小數(shù),這些均屬于簡(jiǎn)單類型。 布爾(bool)類型表示布爾邏輯量,對(duì)應(yīng)于.NET Framework中定義的System.Boolean類。 用戶自定義結(jié)構(gòu):簡(jiǎn)稱為結(jié)構(gòu)。結(jié)構(gòu)類型通常是一組相關(guān)的信息組合成的單一實(shí)體。其中的每個(gè)信息稱為它的一個(gè)成員。 枚舉(enum)類型:由一組特定的常量構(gòu)成一種數(shù)據(jù)結(jié)構(gòu),系統(tǒng)把相同類型、表達(dá)固定含義的一組數(shù)據(jù)作為一個(gè)集合放到一起形成新的數(shù)據(jù)類型2.1.1 值類型1.1 ASP.NET簡(jiǎn)介 string:字符串實(shí)際上是Unicode字符的連續(xù)集合,通常用于表示文本。 數(shù)組:包含若干個(gè)相同類型數(shù)據(jù)的集合,數(shù)組的數(shù)據(jù)類型可以

7、是任何類型。數(shù)組可以是一維的,也可以是多維的。2.1 數(shù)據(jù)類型2.1.2 引用類型2.1.2 引用類型2.1.2 引用類型 裝箱和取消裝箱使值類型能夠被視為對(duì)象。對(duì)值類型裝箱將把該值類型打包到Object引用類型的一個(gè)實(shí)例中。這使得值類型可以存儲(chǔ)于垃圾回收堆中。取消裝箱將從對(duì)象中提取值類型,取消裝箱又經(jīng)常被稱作“拆箱”。 為了保持類型安全,默認(rèn)情況下,C#不支持指針運(yùn)算。不過,通過使用unsafe關(guān)鍵字,可以定義可使用指針的不安全上下文。2.2 變量和常量 所謂變量,就是在程序的運(yùn)行過程中其值可以被改變的量,變量的類型可以是任何一種C#的數(shù)據(jù)類型。所有值類型的變量具有實(shí)際存在于內(nèi)存中的值,也就

8、是說當(dāng)將一個(gè)值賦給變量是執(zhí)行的是值拷貝操作。 2.2.1 變量 所謂常量,就是在程序的運(yùn)行過程中其值不能被改變的量。常量的類型也可以是任何一種C#的數(shù)據(jù)類型。常量的定義格式為: const 常量數(shù)據(jù)類型 常量名(標(biāo)識(shí)符)常量值; 其中,const關(guān)鍵字表示聲明一個(gè)常量,“常量名”就是標(biāo)識(shí)符,用于唯一的標(biāo)識(shí)該常量。常量名要有代表意義,不能過于簡(jiǎn)練或者復(fù)雜。2.2.2 常量2.3 運(yùn)算符 虛擬目錄相當(dāng)于物理目錄在Web服務(wù)器機(jī)器上的別名,它不僅使用戶避免了冗長(zhǎng)的URL,也是一種很好的安全措施,因?yàn)樘摂M目錄對(duì)所有瀏覽者隱藏了物理目錄結(jié)構(gòu) 。 創(chuàng)建虛擬目錄之后,還需要對(duì)虛擬目錄賦予合適的權(quán)限,如果權(quán)限

9、太小,則許多操作不能執(zhí)行,網(wǎng)站的功能會(huì)受到限制。如果權(quán)限太大,則會(huì)帶來安全風(fēng)險(xiǎn)。2.3.1 算術(shù)運(yùn)算符 賦值運(yùn)算符用于將一個(gè)數(shù)據(jù)賦予一個(gè)變量、屬性或者引用,數(shù)據(jù)可以是常量,也可以是表達(dá)式。最常見的賦值運(yùn)算符是等號(hào)“=” 。除了等號(hào)運(yùn)算符,還有一些其他的賦值運(yùn)算符,這些賦值運(yùn)算符都是在“=”之前加上其他運(yùn)算符(例如+、-、*、/、%)。 2.3.2 賦值運(yùn)算符1.2 建立ASP.NET程序的運(yùn)行環(huán)境 關(guān)系運(yùn)算符表示了對(duì)操作數(shù)的比較運(yùn)算,有關(guān)系運(yùn)算符組成的表達(dá)式就是關(guān)系表達(dá)式。關(guān)系表達(dá)式的結(jié)果只可能有兩種即“true”或“false”。 常用的關(guān)系運(yùn)算符有6種:、=、=。2.3 運(yùn)算符2.3.3

10、關(guān)系運(yùn)算符五、修改表中的記錄 邏輯運(yùn)算符主要用于邏輯判斷,主要包括邏輯與,邏輯或和邏輯非。其中,邏輯與和邏輯或?qū)儆诙\(yùn)算符,它要求運(yùn)算符兩邊有兩個(gè)操作數(shù),這兩個(gè)操作數(shù)的值必須為邏輯值。“邏輯非”運(yùn)算符是一元運(yùn)算符,它只要求有一個(gè)操作數(shù),操作數(shù)的值也必須為邏輯值。2.3 運(yùn)算符2.3.4 邏輯運(yùn)算符六、刪除表中的記錄 C#中唯一的一個(gè)三元操作符就是條件運(yùn)算符(?:),由條件運(yùn)算符組成的表達(dá)式就是條件表達(dá)式,條件表達(dá)式的一般格式為:操作數(shù)1?操作數(shù)2:操作數(shù)3。 其中,“操作數(shù)1”的值必須為邏輯值,否則將出現(xiàn)編譯錯(cuò)誤。進(jìn)行條件運(yùn)算時(shí),首先判斷問號(hào)前面的“操作數(shù)1”的邏輯值是真還是假,如果邏輯值為

11、真,則條件運(yùn)算表達(dá)式的值等于“操作數(shù)2”的執(zhí)行結(jié)果值;如果為假,則條件運(yùn)算表達(dá)式的值等于“操作數(shù)3”的執(zhí)行結(jié)果值。2.3 運(yùn)算符2.3.5 條件運(yùn)算符七、刪除表 位運(yùn)算符用于對(duì)操作數(shù)進(jìn)行的位操作,位運(yùn)算符主要包括按位與,按位或,按位異或,按位取反,左移和右移操作。在這些運(yùn)算符中,除按位取反運(yùn)算符是一元運(yùn)算符外,其他的都是二元運(yùn)算符。2.3 運(yùn)算符2.3.6 位運(yùn)算符八、視圖的概念 在C#中為這些運(yùn)算符定義了不同的優(yōu)先級(jí),相同優(yōu)先級(jí)的運(yùn)算符,除了賦值運(yùn)算符按照從右至做的順序執(zhí)行之外,其余運(yùn)算符按照從左至右的順序執(zhí)行。括號(hào)是優(yōu)先級(jí)最高的,可以任意的改變符號(hào)的計(jì)算順序。2.3 運(yùn)算符2.3.7 運(yùn)算

12、符的優(yōu)先級(jí)九、創(chuàng)建視圖 if語句是最常用的分支語句,使用該語句可以有條件地執(zhí)行其他語句。程序執(zhí)行時(shí)首先檢測(cè)“測(cè)試條件”的值,如果“測(cè)試條件”的值是true,就執(zhí)行if語句中的代碼,代碼執(zhí)行完畢后,將繼續(xù)執(zhí)行if語句下面的代碼。如果“測(cè)試條件”的值是false,則直接跳轉(zhuǎn)到if語句后面的代碼執(zhí)行。 switch語句非常類似于if語句,它也是根據(jù)測(cè)試的值來有條件地執(zhí)行代碼,實(shí)際上switch語句完全可以使用if語句代替。一般情況下,如果只有簡(jiǎn)單的幾個(gè)分支就需要使用if語句,否則建議使用switch語句,這樣可以使代碼的執(zhí)行效率比較高。 條件運(yùn)算符(?:):由條件運(yùn)算符組成的表達(dá)式就是條件表達(dá)式,條

13、件表達(dá)式的一般格式為:操作數(shù)1?操作數(shù)2:操作數(shù)3。2.4 流程控制2.4.1 條件語句九、創(chuàng)建視圖 2.4 流程控制2.4.2 循環(huán)語句 do-while循環(huán):程序從會(huì)首先執(zhí)行一次循環(huán)代碼,然后判斷布爾表達(dá)式的值,如果值為true就從do語句位置開始重新執(zhí)行循環(huán)代碼,一直到布爾表達(dá)式的值false。 while循環(huán):類似于do循環(huán),但是while循環(huán)的布爾測(cè)試是在循環(huán)開始時(shí)進(jìn)行的,如果測(cè)試布爾表達(dá)式的結(jié)果為false就不會(huì)執(zhí)行循環(huán)代碼,程序直接跳轉(zhuǎn)到while循環(huán)后面的代碼執(zhí)行。 for循環(huán):可以執(zhí)行指定的次數(shù),并維護(hù)它自己的計(jì)數(shù)器。 foreach循環(huán):列舉出一個(gè)集合(collection

14、)中的所有元素,并執(zhí)行關(guān)于集合中每個(gè)元素的嵌套語句。 break語句:終止并跳出循環(huán) continue語句:終止當(dāng)前的循環(huán),重新開始一個(gè)新的循環(huán) goto語句:跳轉(zhuǎn)到指定的位置 return語句:跳出循環(huán)及其包含的函數(shù) throw語句:拋出一個(gè)異常2.4 流程控制2.4.2 跳轉(zhuǎn)語句 類中包含數(shù)據(jù)成員(常數(shù)、域和事件)、功能成員(方法、屬性、索引、操作符、構(gòu)造函數(shù)和析構(gòu)函數(shù))和嵌套類型。 C#中提供了很多標(biāo)準(zhǔn)的類,Object類是每個(gè)類的祖先類,C#中所有的類都是從Object類派生出來的。 “類修飾符”用于對(duì)類進(jìn)行修飾,說明類的特性。主要包括:new、public、protected、pri

15、vate、internal、abstract和sealed。2.5 類和對(duì)象2.5.1 類 屬性:定義類的值,并對(duì)它們提供讀、寫操作。 方法:完成類中各種計(jì)算或功能的操作,不能和類同名,也不能在前面加“”波浪線符號(hào)。2.5.2 屬性、方法 構(gòu)造函數(shù):構(gòu)造函數(shù)的函數(shù)名必須和類名一樣。當(dāng)創(chuàng)建一個(gè)對(duì)象時(shí),系統(tǒng)首先給對(duì)象分配合適的內(nèi)存空間,隨后系統(tǒng)就自動(dòng)調(diào)用對(duì)象的構(gòu)造函數(shù)。因此構(gòu)造函數(shù)是對(duì)象執(zhí)行的入口函數(shù),非常的重要。 析構(gòu)函數(shù):該函數(shù)破壞一個(gè)類的實(shí)例,釋放該實(shí)例占有的資源。和構(gòu)造函數(shù)不同,析構(gòu)函數(shù)在類撤銷時(shí)運(yùn)行,常用來處理類用完后的收尾工作。2.5 類和對(duì)象2.5.3 對(duì)象的創(chuàng)建和回收 繼承性是面向

16、對(duì)象的一個(gè)重要特性,在定義類的時(shí)候可以指定要繼承的類,語法如下:類修飾符 class 類名:父類名 成員修飾符 類的成員變量或者成員函數(shù); 多態(tài)性是指同一操作作用于不同類的實(shí)例,這些類進(jìn)行不同的解釋,從而產(chǎn)生不同的執(zhí)行結(jié)果的現(xiàn)象?;愅ㄟ^定義虛方法、虛屬性,使它的派生類可以重載這些成員,從而實(shí)現(xiàn)類的多態(tài)性。2.5 類和對(duì)象2.5.4 繼承和多態(tài) 委托是一種安全地封裝方法的類型,它與C和C+中的函數(shù)指針類似。與C中的函數(shù)指針不同,委托是面向?qū)ο蟮?、類型安全的和保險(xiǎn)的。委托的類型由委托的名稱定義。 事件是類在發(fā)生其關(guān)注的事情時(shí)用來提供通知的一種方式。事件使用委托來為觸發(fā)時(shí)將調(diào)用的方法提供類型安全的

17、封裝。委托可以封裝命名方法和匿名方法。2.6 委托與事件第3章 ASP.NET服務(wù)器控件3.1 HTML控件 表格是一種能夠有效的描述信息的組織方式,由行、列和單元格組成,可以很好地控制頁面布局。表格的定義通,和標(biāo)簽實(shí)現(xiàn)。 定義表格的其基本格式如下所示。表格的一行的第一個(gè)單元格表格的一行的第二個(gè)單元格.表格的二行的第一個(gè)單元格表格的二行的第二個(gè)單元格.3.1.1表格3.1 HTML控件 網(wǎng)頁中具有可輸入表項(xiàng)及項(xiàng)目選擇等控制所組成的欄目稱為表單,表單一般由表單標(biāo)簽和表單域組成,其中表單標(biāo)簽里面包含了處理表單數(shù)據(jù)所用CGI程序的URL以及數(shù)據(jù)提交到服務(wù)器的方法;表單域是用戶輸入和交互的主要界面,包

18、括了 ,四種類型,其中類型又包含Text,Radio,Checkbox, Password,Submit/Reset,Image,F(xiàn)ile,Hidden,Button等類型。 3.1.2 表單3.1 HTML控件 Web頁面中可以使用標(biāo)簽為頁面添加圖像,使得頁面更加漂亮。在Web頁面上可以顯示.gif,.jpg 或者.png等格式的圖像。 3.1.3圖像3.2 ASP.NET控件的共有屬性 AccessKey屬性用來為控件指定鍵盤的快速鍵,這個(gè)屬性的內(nèi)容為數(shù)字或是英文字母。例如設(shè)置為“A”,那么使用時(shí)用戶按下Alt+A組合鍵就會(huì)制動(dòng)將焦點(diǎn)移動(dòng)到這個(gè)控件的上面。1AccessKey屬性2Back

19、Color和ForeColor屬性 Backcolor屬性用于設(shè)置對(duì)象的背景色,其屬性的設(shè)定值為顏色名稱或是#RRGGBB 的格式。 ForeColor 屬性用于設(shè)置對(duì)象的前景色,其屬性的設(shè)定值和Backcolor的要求一樣,為顏色名稱或是#RRGGBB 的格式。3.2 ASP.NET控件的共有屬性 BorderWidth屬性可以用設(shè)定Web控件的邊框?qū)挾?,單位是像素?jì)算。 BorderColor屬性用于設(shè)定邊框的顏色,其屬性的設(shè)定值為顏色名稱或是#RRGGBB 的格式 。 BorderStyle屬性用來設(shè)定對(duì)象的邊框的樣式 。3邊框?qū)傩?Enabled屬性用于設(shè)置禁止控件還是使能控件。當(dāng)該屬

20、性值為False時(shí),控件為禁止?fàn)顟B(tài)。當(dāng)該屬性值為True時(shí)控件為使能狀態(tài),對(duì)于有輸入焦點(diǎn)的控件,用戶可以對(duì)控件執(zhí)行一定的操作。3.2 ASP.NET控件的共有屬性4Enabled屬性Font屬性有以下幾個(gè)子屬性,分別表現(xiàn)不同的字體特性:Font-Bold:如果屬性值設(shè)定為True,則會(huì)變成粗體顯示。Font-Italic:如果屬性值設(shè)定為True,則會(huì)變成斜體顯示。Font-Names:設(shè)置字體的名字。Font-Size:設(shè)置字體大小,共有九種大小可供選擇Smaller、Larger、XX-Small、X-Small、Small、Medium、Large、X-Large或者XX-Large。F

21、ont-Strikeout:如果屬性值設(shè)定為True,則文字中間顯示一條刪除線。Font-Underline:如果屬性值設(shè)定為True,則文字下面顯示一條底線。3.2 ASP.NET控件的共有屬性5Font屬性 TabIndex屬性用來設(shè)置Tab按鈕的順序。當(dāng)用戶使用者按下Tab鍵時(shí),輸入焦點(diǎn)將從當(dāng)前控件跳轉(zhuǎn)到下一個(gè)可以獲得焦點(diǎn)的控件,TabIndex鍵就是用于定義這種跳轉(zhuǎn)順序的。3.2 ASP.NET控件的共有屬性6TabIndex屬性 ToolTip屬性用于設(shè)置控件的提示信息。在設(shè)置了該屬性值后,當(dāng)鼠標(biāo)停留在Web 控件上一小段時(shí)間后就會(huì)出現(xiàn)ToolTip屬性中設(shè)置的文字。 7ToolTi

22、p屬性 Visible 屬性決定了控件是否會(huì)被顯示,如果屬性值為true將顯示該控件,否則將隱藏該控件(該控件存在,只是不可見)。3.2 ASP.NET控件的共有屬性8Visible屬性 Height和Width屬性分別用于設(shè)置控件的高度和寬度,單位是pixel(像素)9Height和Width屬性3.3.1 顯示數(shù)據(jù)3.3 Web基本服務(wù)器控件 Label Web服務(wù)器控件為開發(fā)人員提供了一種以編程方式設(shè)置Web窗體頁中文本的方法。通常當(dāng)希望在運(yùn)行時(shí)更改頁面中的文本時(shí)就可以使用Label控件。當(dāng)希望顯示的內(nèi)容不可以被用戶編輯時(shí),也可以使用Label控件。 Image 類直接繼承于WebCon

23、trol類,可以在Web頁上顯示圖像(但是不能捕捉鼠標(biāo)的單擊事件)。該控件包含多種屬性,如下所示。ImageUrl屬性:指定所顯示圖像的路徑。AlternateText屬性:設(shè)置當(dāng)圖像不可用時(shí)顯示的替代文字。ImageAlign 屬性:指定圖像相對(duì)于Web頁上其他元素的對(duì)齊方式。3.3.2 顯示圖像3.3 Web基本服務(wù)器控件 TextBox類直接繼承于WebControl類,用于讓用戶輸入文本,它多種顯示效果,使用非常的靈活,相當(dāng)于HTML中的、或者元素。主要屬性有: Text屬性:設(shè)置和讀取TextBox中的文字。 TextMode屬性:設(shè)置文本的顯示模式 Columns屬性:獲取或設(shè)置文

24、本框的顯示寬度 Rows屬性:獲取或設(shè)置多行文本框中顯示的行數(shù) MaxLength屬性:設(shè)置可以接受的最大字符數(shù)目。 AutoPostBack屬性:設(shè)置每當(dāng)用戶修改TextBox控件中的文本并使焦點(diǎn)離開該控件時(shí),是否都向服務(wù)器自動(dòng)回送。 Wrap屬性:設(shè)置是否自動(dòng)斷行。3.3.3 輸入數(shù)據(jù)3.3 Web基本服務(wù)器控件 Buton控件可以用來作為Web頁面中的普通按鈕,它可以表示兩種類型的按鈕:submit類型的按鈕和command類型的按鈕。 submit類型按鈕用來把Web頁面提交到服務(wù)器處理,沒有從服務(wù)器返回的過程。 command類型的按鈕有一個(gè)相應(yīng)的command名,當(dāng)有多個(gè)comma

25、nd類型的按鈕共享一個(gè)事件處理函數(shù)時(shí),可以通過Command名字區(qū)分要出來哪個(gè)Button的事件。3.3.4 Button控件3.3 Web基本服務(wù)器控件 HyperLink類直接繼承于WebControl類,用于創(chuàng)建到其他Web頁的鏈接,它可以用來設(shè)定超級(jí)鏈接,就是相當(dāng)于HTML元素的標(biāo)注3.3.5 HyperLink控件3.3 Web基本服務(wù)器控件ListBox控件可以選擇一項(xiàng)或者多項(xiàng)內(nèi)容, 其主要屬性如下: Rows屬性定義了ListBox的顯示行數(shù),當(dāng)控件實(shí)際包含的項(xiàng)數(shù)超過了顯示的行數(shù),就會(huì)顯示一個(gè)垂直滾動(dòng)條。 SelectionMode屬性用于設(shè)置是否只能選擇一個(gè)選項(xiàng),如果該屬性值為

26、Single,則只能有一個(gè)選項(xiàng)被選中。 SelectedItem屬性返回被選中的選項(xiàng)3.3.6 列表控件3.3 Web基本服務(wù)器控件 CheckBox類繼承于WebControl類,用于允許用戶選擇true狀態(tài)或false狀態(tài)。它實(shí)現(xiàn)了復(fù)選框的功能,相當(dāng)于HTML元素。 Text屬性:設(shè)置或者獲取CheckBox控件顯示的文字。 TextAlign屬性:設(shè)置文字的對(duì)齊方式。 AutoPostBack屬性用于設(shè)置是否自動(dòng)向服務(wù)器發(fā)送數(shù)據(jù),其默認(rèn)屬性值為false。 Checked屬性用于設(shè)置或者獲取CheckBox控件是否被選中。 CheckBoxList控件直接從ListControl類繼承,

27、可以看成是一個(gè)CheckBox控件的集合 。當(dāng)用戶希望靈活的控制界面布局,定義不同的顯示效果時(shí),或者只使用較少的幾個(gè)復(fù)選框時(shí)可以使用CheckBox控件,當(dāng)有較多的復(fù)選框時(shí),建議使用CheckBoxList控件。 3.3.7 多選操作3.3 Web基本服務(wù)器控件 RadioButton控件和RadioButtonList控件的關(guān)系就像CheckBox控件和CheckBoxList控件一樣,其中RadioButton繼承于CheckBox。其屬性為: Checked屬性:獲取或者設(shè)置RadioButton是否被選中 GroupName屬性:為RadioButton設(shè)置組,當(dāng)有多個(gè)RadioBut

28、ton時(shí),可以把它們?cè)O(shè)置為同一個(gè)組 Text屬性:顯示RadioButton的文字信息 TextAlign:設(shè)置文字的對(duì)齊方式 RadioButtonList控件用于提供一組RadioButton控件,使用RadioButtonList控件可以方便的快速的生成RadioButton。3.3.8 單選操作3.3 Web基本服務(wù)器控件 DropDownList控件與ListBox控件非常相似,該控件類似Windows的中下拉列表框,用戶可以從單項(xiàng)選擇下拉列表框中進(jìn)行選擇。 DropDownList控件允許用戶從預(yù)定義列表中選擇一項(xiàng)內(nèi)容,單擊該控件時(shí)會(huì)顯示下來列表框顯示備選項(xiàng)。3.3.9 下拉列表框

29、3.3 Web基本服務(wù)器控件 Panel控件一般作為其他控件的容器使用,在編程過程中,如果打算控制一組控件的集體行為,例如顯示或者隱藏控件,禁止或者使能控件等,就可以使用Panel控件,只要設(shè)置Panel控件的該屬性,即可達(dá)到控制效果。 3.3.10 控件的容器3.3 Web基本服務(wù)器控件 Table控件可以在Web窗體頁上創(chuàng)建表格, 該控件可以生成HTML表,類似于標(biāo)記 。 和用于定義表格中的行。和用于定義行中的每一個(gè)單元格。 3.3.11 表格控件3.3 Web基本服務(wù)器控件 BulletedList控件生成一個(gè)采用項(xiàng)目符號(hào)格式的項(xiàng)列表,如果用戶希望指定顯示在BulletedList控件中

30、的個(gè)別列表項(xiàng),請(qǐng)?jiān)贐ulletedList控件的開始標(biāo)記和結(jié)束標(biāo)記之間為每個(gè)項(xiàng)放置一個(gè)ListItem對(duì)象。 使用FirstBulletNumber屬性來指定排序BulletedList控件中開始列表項(xiàng)編號(hào)的值。如果BulletStyle屬性設(shè)置為Disc、Square、Circle或ustomImage字段,則忽略分配給FirstBulletNumber屬性的值。如果將BulletStyle屬性設(shè)置為CustomImage的值,以指定項(xiàng)目符號(hào)的自定義圖像,則開發(fā)人員還必須設(shè)置BulletImageUrl屬性以指定圖像文件的位置。3.4.1 使用BulletedList控件實(shí)現(xiàn)項(xiàng)目符合和編號(hào)3

31、.4 ASP.NET2.0高級(jí)控件 ImageMap控件可以創(chuàng)建一個(gè)圖像,該圖像包含許多用戶可以單擊的單個(gè)區(qū)域,這些區(qū)域稱為作用點(diǎn)。每一個(gè)作用點(diǎn)都可以是一個(gè)單獨(dú)的超接或回發(fā)事件。 ImageMap控件主要由兩個(gè)部分組成。第一個(gè)是圖像,它可是任何標(biāo)準(zhǔn)Web圖形格式的圖形,如.gif、.jpg或.png文件。第二個(gè)元素是作用點(diǎn)控件的集合。每個(gè)作用點(diǎn)控件都是一個(gè)不同的元素。對(duì)于每個(gè)作用點(diǎn)控件,我們要定義其形狀(圓形、矩形或多邊形)以及用于指定作用點(diǎn)的位置大小的坐標(biāo)。3.4.2 ImageMap控件3.4 ASP.NET2.0高級(jí)控件 Calendar控件用來顯示單月月歷,該月歷使用戶可以選擇日期并移

32、到下個(gè)月或上個(gè)月。Calendar控件為用戶選擇日期提供了豐富的可視界面,通過該控件用戶可以選擇日期并移到下個(gè)月或上個(gè)月。該控件的主要屬性有:SelectionMode屬性:指定Calendar控件是否允許選擇單日、周或整月。 ShowDayHeader:顯示或隱藏顯示一周中各天的部分。 ShowGridLines:顯示或隱藏月中各天之間的網(wǎng)格線。 ShowNextPrevMonth:顯示或隱藏指向下個(gè)月或上個(gè)月的導(dǎo)航控件。3.5.1 Calendar控件3.5 ASP.NET2.0功能增強(qiáng)控件 AdRotator 控件用來在Web窗體頁上顯示隨機(jī)選定的廣告信息,直接繼承于WebControl

33、。該控件的主要屬性有: ImageUrl:指定了圖像文件的絕對(duì)或相對(duì)路徑。 NavigateUrl:指定了當(dāng)用戶單擊廣告時(shí)要鏈接到的頁的URL。 AlternateText:設(shè)置當(dāng)由ImageUrl屬性指定的圖像不可用時(shí)替換該圖像的文本顯示。 Keyword:設(shè)置該廣告的篩選關(guān)鍵字。 Impressions:設(shè)置該廣告在輪換安排中相對(duì)于文件中其他廣告的重要。 KeywordFilter屬性:設(shè)置過濾關(guān)鍵字3.5.2 AdRotator控件3.5 ASP.NET2.0功能增強(qiáng)控件第4章 ASP.NET 2.0驗(yàn)證控件4.1 驗(yàn)證控件簡(jiǎn)介服務(wù)器端數(shù)據(jù)驗(yàn)證 驗(yàn)證控件在服務(wù)器代碼中執(zhí)行輸入檢查。當(dāng)用戶

34、向服務(wù)器提交頁面之后,服務(wù)器將逐個(gè)調(diào)用驗(yàn)證控件來檢查用戶輸入。如果在任意輸入控件中檢測(cè)到驗(yàn)證錯(cuò)誤,則該頁面將自行設(shè)置為無效狀態(tài),以便在代碼運(yùn)行之前測(cè)試其有效性。驗(yàn)證空間錯(cuò)誤信息的顯示方式包括:客戶端數(shù)據(jù)驗(yàn)證 如果用戶使用的瀏覽器支持 ECMAScript (Javascript),則驗(yàn)證控件還可使用客戶端腳本執(zhí)行驗(yàn)證。這樣可以縮短頁面的響應(yīng)時(shí)間,因?yàn)殄e(cuò)誤將被立即檢測(cè)到并且將在用戶離開包含錯(cuò)誤的控件后立即顯示錯(cuò)誤信息。4.1 驗(yàn)證控件簡(jiǎn)介 ASP.NET驗(yàn)證控件的分類 ASP.NET驗(yàn)證控件共有五種,分別用于檢查用戶輸入信息的不同方面,各種控件的類型和作用如下所示: 必需項(xiàng)RequiredFie

35、ldValidator:驗(yàn)證某個(gè)控件的內(nèi)容是否被改變 與某值的比較CompareValidator:對(duì)兩個(gè)值進(jìn)行比較 驗(yàn)證范圍檢查RangeValidator控件:驗(yàn)證某個(gè)值是否在要求的范圍內(nèi) 模式匹配RegularExpressionValidator:驗(yàn)證相關(guān)輸入控件的值是否匹配正則表達(dá)式指定的模式用戶定義ValidationSummary:顯示所有驗(yàn)證錯(cuò)誤的摘要4.2 非空驗(yàn)證 RequiredFieldValidator控件可以驗(yàn)證用戶的是否對(duì)某個(gè)Web頁面中的字段進(jìn)行了編輯,直接繼承于BaseValidator類。該控件的屬性主要包括: ControlToValidate屬性:關(guān)聯(lián)要

36、被驗(yàn)證的控件。 InitialValue屬性用于獲取或者設(shè)置要被檢驗(yàn)的初始值。 ErrorMessage屬性:驗(yàn)證不通過時(shí)顯示的錯(cuò)誤信息。 Text屬性:控件中顯示的信息。 4.3 范圍驗(yàn)證 RangeValidator控件用于測(cè)試輸入控件的值是否在指定范圍內(nèi),直接繼承于BaseCompareValidator。該控件的主要屬性有: MaximumValue:指定有效值的最大值。 MinimumValue:指定有效值的最小值。 ErrorMessage:指定了驗(yàn)證失敗時(shí)要顯示的錯(cuò)誤信息。 return語句:跳出循環(huán)及其包含的函數(shù) throw語句:拋出一個(gè)異常4.4 使用正則表達(dá)式進(jìn)行驗(yàn)證 Re

37、gularExpressionValidator控件用于驗(yàn)證相關(guān)輸入控件的值是否匹配正則表達(dá)式指定的模式,直接繼承于BaseValidator。一般通過IDE中的“正則表達(dá)式編輯器”來設(shè)置正則表達(dá)式。該編輯器如圖所示。正則表達(dá)式編輯器4.5驗(yàn)證兩個(gè)控件輸入值是否相同 CompareValidator控件用于將用戶輸入的值和其他控件的值或者常數(shù)進(jìn)行比較,直接繼承于BaseCompareValidator。該控件的主要屬性有: ControlToValidate屬性:指定要驗(yàn)證的輸入控件。 Type屬性:指定了兩個(gè)比較值的數(shù)據(jù)類型。 Operator屬性指定了進(jìn)行比較的類型。 4.6 使用自定義函

38、數(shù)的驗(yàn)證 如果現(xiàn)有的ASP.NET驗(yàn)證控件無法滿足需求,我們可以定義一個(gè)自定義的服務(wù)器端驗(yàn)證函數(shù),然后使用CustomValidator控件來調(diào)用它。該類直接繼承于BaseValidator。CustomValidator的語法如下所示:4.7 頁面統(tǒng)一驗(yàn)證 ValidationSummary控件用于顯示頁面中的所有驗(yàn)證錯(cuò)誤的摘要,直接繼承于WebControl。當(dāng)頁面上有很多驗(yàn)證控件時(shí),可以使用一個(gè)ValidationSummary控件在一個(gè)位置總結(jié)來自Web頁上所有驗(yàn)證程序的錯(cuò)誤信息。該控件的主要屬性有: DisplayMode屬性:設(shè)置驗(yàn)證摘要的顯示模式。 ShowSummary屬性:指

39、定是顯示還是隱藏 ValidationSummary 控件。 ShowMessageBox屬性:指定是否顯示一個(gè)消息對(duì)話框顯示驗(yàn)證的摘要信息。 HeaderText屬性:獲取或設(shè)置顯示在摘要上方的標(biāo)題文本。 第5章 ASP.NET中的對(duì)象5.1 基本輸出對(duì)象Response Response對(duì)象屬于HttpResponset類,當(dāng)Page類的Response屬性被訪問時(shí),它返回該對(duì)象,然后開發(fā)者就可以使用該對(duì)象中的方法。該類的主要屬性有: Buffer:獲取或設(shè)置一個(gè)值,該值指示是否緩沖輸出,并在完成處理整個(gè)響應(yīng)之后將其發(fā)送。 ContentType:獲取或設(shè)置輸出流的HTTP MIME類型。

40、 Cookies:獲取響應(yīng)Cookie集合。 Clear:清除緩沖區(qū)流中的所有內(nèi)容輸出。 Redirect:將客戶端重定向到新的URL5.1 基本輸出對(duì)象Response Write方法用于將信息寫入HTTP響應(yīng)輸出流,輸出到客戶端顯示,其語法定義如下所示。public void Write(char, int, int);public void Write(string);public void Write(object);public void Write(char); WriteFile可以將指定的文件直接寫入HTTP響應(yīng)輸出流,其語法定義如下所示。public void WriteFi

41、le(string filename);public void WriteFile(string filename, long offset, long size);public void WriteFile(IntPtr fileHandle, long offset, long size);public void WriteFile(string filename, bool readIntoMemory);1. 輸出字符串和文件5.1 基本輸出對(duì)象Response Response對(duì)象的Redirect 方法可以將客戶端重定向到新的URL,其語法定義如下所示。public void Re

42、direct(string url);public void Redirect( string url, bool endResponse); 其中,url為要重新定向的目標(biāo)網(wǎng)址,endResponse指示當(dāng)前頁的執(zhí)行是否應(yīng)終止。 2. 網(wǎng)頁重定向5.2 基本輸入對(duì)象Request 訪問Page類的Request屬性時(shí),它返回HttpRequest的一個(gè)對(duì)象。然后開發(fā)者就可以使用該對(duì)象中的方法。該屬性提供對(duì)當(dāng)前頁請(qǐng)求的訪問,其中包括請(qǐng)求標(biāo)題、Cookie、客戶端證書、查詢字符串等。HttpRequest類的常見屬性有: ApplicationPath:說明被請(qǐng)求的頁面位于Web應(yīng)用程序的哪一個(gè)

43、文件夾中。 Path:與ApplicationPath相同,即返回頁面完整的Web路徑地址,而且還包括頁面的文件名稱。 PhysicalApplicationPath:返回頁面的完整路徑,但它位于物理磁盤上,而不是一個(gè)Web地址。 Cookies:查看訪問者在以前訪問本站點(diǎn)時(shí)使用的cookies。 在Page_Load事件中進(jìn)行處理,以便獲得瀏覽器的信息。代碼如下:protected void Page_Load(object sender, EventArgs e)if(!IsPostBack) Label1.Text = Request.UserHostName; Label2.Text

44、= Request.UserHostAddress; Label3.Text = Request.UserLanguages0; 1. 獲取瀏覽器信息5.2 基本輸入對(duì)象Request 在Page_Load事件中進(jìn)行處理,以便獲得HTTP的信息。代碼如下:protected void Page_Load(object sender, EventArgs e). Response.Write(利用Request對(duì)象獲取HTTP中的信息);NameValueCollection coll = Request.Headers;String arr1 = coll.AllKeys;for (int l

45、oop1 = 0; loop1 arr1.Length; loop1+)Response.Write(arr1loop1 + : );String arr2 = coll.GetValues(arr1loop1);for (int loop2 = 0; loop2 arr2.Length; loop2+)Response.Write(arr2loop2 + );Response.Write();5.2 基本輸入對(duì)象Request2. 獲取HTTP中的信息 Server對(duì)象提供了對(duì)服務(wù)器信息的封裝,例如封裝了服務(wù)器的名稱。Server對(duì)象實(shí)際上操作System.Web命名空間中的HttpServ

46、erUtility類 。Server對(duì)象提供許多訪問的方法和屬性幫助程序有序的執(zhí)行。Server對(duì)象常用屬性和方法有: MachineName:獲取服務(wù)器的計(jì)算機(jī)名稱。 ScriptTimeout:獲取和設(shè)置請(qǐng)求超時(shí)(以秒計(jì))。 Transfer方法:終止當(dāng)前頁的執(zhí)行,并為當(dāng)前請(qǐng)求開始執(zhí)行新頁。 MapPath方法:返回與Web服務(wù)器上的指定虛擬路徑相對(duì)應(yīng)的物理文件路徑。 HtmlEncode方法:對(duì)要在瀏覽器中顯示的字符串進(jìn)行編碼。5.3 Server對(duì)象 Server對(duì)象的HtmlEncode方法用于對(duì)要在瀏覽器中顯示的字符串進(jìn)行編碼,其語法定義如下所示。public string Htm

47、lEncode(string s);public void HtmlEncode(string s, TextWriter output); Server對(duì)象的HtmlDecode方法用于對(duì)已進(jìn)行HTML編碼的字符串進(jìn)行解碼,是HtmlEncode方法的反操作,其語法定義如下所示。public string HtmlDecode(string s);public void HtmlDecode( string s, TextWriter output); 5.3 Server對(duì)象1. 利用Server對(duì)象進(jìn)行HTML編碼解碼 Server對(duì)象的UrlEncode方法用于編碼字符串,以便通過UR

48、L從Web服務(wù)器到客戶端進(jìn)行可靠的HTTP傳輸。UrlEncode方法的語法定義如下所示。public string UrlEncode( string s);public void UrlEncode(string s, TextWriter output); Server對(duì)象的UrlDecode方法用于對(duì)字符串進(jìn)行解碼,該字符串為了進(jìn)行HTTP傳輸而進(jìn)行編碼并在URL中發(fā)送到服務(wù)器。UrlDecode方法的語法定義如下所示。public string UrlDecode(string s);public void UrlDecode(string s, TextWriter output)

49、; 5.3 Server對(duì)象2.利用Server對(duì)象進(jìn)行URL編碼和解碼5.4 Session對(duì)象 Session對(duì)象實(shí)際上操作System.Web命名空間中的HttpSessionState類 。Session對(duì)象可以為每個(gè)用戶的會(huì)話存儲(chǔ)信息。Session對(duì)象中的信息只能被用戶自己使用,而不能被網(wǎng)站的其他用戶訪問,因此可以在不同的頁面間共享數(shù)據(jù),但是不能在用戶間共享數(shù)據(jù)。 當(dāng)每個(gè)用戶首次與服務(wù)器建立連接時(shí),服務(wù)器就會(huì)為其建立了一個(gè)Session(會(huì)話),同時(shí)服務(wù)器會(huì)自動(dòng)為用戶分配一個(gè)SessionID,用以標(biāo)識(shí)這個(gè)用戶的唯一身份。Session對(duì)象具有兩個(gè)事件:Session_OnStar

50、t事件和Session_OnEnd事件。Session_OnStart事件在創(chuàng)建一個(gè)Session時(shí)被觸發(fā),Session_OnEnd事件在用戶Session結(jié)束時(shí)被調(diào)用。 對(duì)于每個(gè)用戶的每次訪問Session對(duì)象是唯一的,此外,Session對(duì)象的有效性是受時(shí)間限制的。 對(duì)于每個(gè)用戶的每次訪問Session對(duì)象是唯一的,這包括兩個(gè)含義: 對(duì)于某個(gè)用戶的某次訪問,Session對(duì)象在訪問期間唯一,可以通過Session對(duì)象在頁面間共享信息。只要Session沒有超時(shí),或者Abandon方法沒有被調(diào)用,Session中的信息就不會(huì)丟失。Session對(duì)象不能在用戶間共享信息,而Applicati

51、on對(duì)象可以在不同的用戶間共享信息。 對(duì)于用戶的每次訪問其Session都不同,兩次訪問之間也不能共享數(shù)據(jù),而Application對(duì)象只要沒有被重新啟動(dòng),可以在多次訪問間共享數(shù)據(jù)。5.4 Session對(duì)象5.5 Cookie對(duì)象 Cookie對(duì)象實(shí)際是System.Web命名空間中HttpCookie類的對(duì)象。Cookie對(duì)象為Web應(yīng)用程序保存用戶相關(guān)信息提供了一種有效的方法。當(dāng)用戶訪問某個(gè)的站點(diǎn)時(shí),該站點(diǎn)可以利用Cookie保存用戶首選項(xiàng)或其他信息,這樣當(dāng)用戶下次再訪問該的站點(diǎn)時(shí),應(yīng)用程序就可以檢索以前保存的信息。 當(dāng)用戶第一次訪問某個(gè)站點(diǎn)時(shí),Web應(yīng)用程序發(fā)送給該用戶一個(gè)頁面和一個(gè)包

52、含日期和時(shí)間的Cookie。用戶的瀏覽器在獲得頁面的同時(shí)還得到了這個(gè)Cookie,并且將它保存在用戶硬盤上的某個(gè)文件夾中。 ASP.NET包含兩個(gè)內(nèi)部Cookie集合:Request對(duì)象的Cookies 集合和Response的Cookies集合。訪問Cookie的方法:HttpCookie MyCookie = new HttpCookie(LastVisit);DateTime now = DateTime.Now;MyCookie.Value = now.ToString();MyCookie.Expires = now.AddHours(1);Response.Cookies.Add(

53、MyCookie);5.5 Cookie對(duì)象5.6 Application對(duì)象 Application對(duì)象操作System.Web命名空間中的HttpApplicationState類。Application對(duì)象為經(jīng)常使用的信息提供了一個(gè)有用的Web站點(diǎn)存儲(chǔ)位置,Application中的信息可以被網(wǎng)站的所有頁面訪問,因此可以在不同的用戶間共享數(shù)據(jù)。 Application包含Application_OnStart和Application_OnEnd兩個(gè)事件,其中Application_OnStart在ASP.NET應(yīng)用程序被執(zhí)行時(shí)被觸發(fā),Application_OnEnd事件在ASP.NET

54、應(yīng)用程序結(jié)束執(zhí)行時(shí)被觸發(fā)??梢栽贕lobal.asax文件對(duì)這兩個(gè)事件進(jìn)行處理,添加用戶自定義代碼。 Lock和UnLock方法的使用 Application對(duì)象是一個(gè)集合對(duì)象,并在整個(gè)ASP.NET網(wǎng)站內(nèi)可用,不同的用戶在不同的時(shí)間都有可能訪問Application對(duì)象的變量,因此Application對(duì)象提供Lock方法用于鎖定對(duì)HttpApplicationState變量的訪問以避免訪問同步造成的問題。在對(duì)Application對(duì)象的變量訪問完成后,需要調(diào)用UnLock方法取消對(duì)HttpApplicationState變量的鎖定。5.6 Application對(duì)象第6章ADO.NET數(shù)據(jù)

55、庫編程6.1 ADO.NET的基本對(duì)象 ADO.NET又被稱為ActiveX數(shù)據(jù)對(duì)象(ActiveX Data Object)。ADO.NET對(duì)象模型中有五個(gè)主要的組件,分別是Connection、Command、DataReader、DataSet以及DataReader。圖 ADO.NET組件結(jié)構(gòu)6.2 連接數(shù)據(jù)庫 創(chuàng)建數(shù)據(jù)庫可以使用可視化方式或者使用SQL語句。 使用Microsoft SQL Server Management Studio可以通過可視化的方式創(chuàng)建SQL Server數(shù)據(jù)庫。6.2.1 創(chuàng)建數(shù)據(jù)庫 SQL Server .NET Framework數(shù)據(jù)提供程序使用Sql

56、Connection對(duì)象提供與Microsoft SQL Server的7.0版或它的更高版本的連接。 使用SqlConnection對(duì)象建和打開數(shù)據(jù)庫連接的實(shí)例:string ConnStr = server=localhost; Integrated Security=True;database=pubs; ;SqlConnection sqlConn= new SqlConnection(ConnStr);sqlConn.Open(); 其中,server指定了SQL Serverr服務(wù)器的名字,這里設(shè)置localhost表示為本機(jī);Integrated Security表示采用信任連接

57、方式,即用Windows組帳號(hào)(在ASP環(huán)境中是訪問IIS服務(wù)帳號(hào)IUSR_計(jì)算機(jī)名,在ASP.NET環(huán)境中帳號(hào)是ASPNET)登錄至SQL Server數(shù)據(jù)庫服務(wù)器,。Database(或Initial Catalog)用于設(shè)置登錄到哪個(gè)數(shù)據(jù)庫中。6.2.2 連接SQL Server數(shù)據(jù)庫6.2 連接數(shù)據(jù)庫 對(duì)于沒有加密的ACCESS文件,可以使用.NET Framework 2.0版中新增的AccessDataSource控件進(jìn)行連接,對(duì)于受密碼保護(hù)的ACCESS文件,只能使用SqlDataSource控件來實(shí)現(xiàn)連接。6.2.3 連接Microsoft Access數(shù)據(jù)庫6.2 連接數(shù)據(jù)庫

58、圖 “添加連接”對(duì)話框6.3 讀取數(shù)據(jù) SqlCommand類可以用來對(duì)SQL Server數(shù)據(jù)庫執(zhí)行的一個(gè)Transact-SQL語句或存儲(chǔ)過程。該類的屬性和方法主要有: CommandText屬性:獲取或設(shè)置要對(duì)數(shù)據(jù)源執(zhí)行的 Transact-SQL 語句或存儲(chǔ)過程。 CommandTimeout屬性:設(shè)置獲取或設(shè)置在終止執(zhí)行命令的嘗試并生成錯(cuò)誤之前的等待時(shí)間。 Parameter屬性:為在SQL語句或者存儲(chǔ)過程中使用的參數(shù)設(shè)置值。 ExecuteNonQuery:可以通過該命令來執(zhí)行不需要返回值的操作。 ExecuteScalar:它可以執(zhí)行SELECT查詢,但返回的是一個(gè)單值,多用于查

59、詢聚合值的情況。 ExecuteReader:該方法返回一個(gè)DataReader對(duì)象,內(nèi)容為與命令匹配的所有行。6.3.1 使用SqlCommand類 OleDBCommand的使用方法和SqlCommand非常類似,用來連接支持OLE DB技術(shù)的數(shù)據(jù)源。由于OleDbCommand類屬于System.Data.OleDb命名空間,因此使用該類時(shí)需要引用命名空間System.Data.OleDb 。6.3 讀取數(shù)據(jù)6.3.2 使用OleDBCommand類6.3.3 使用存儲(chǔ)過程 存儲(chǔ)過程(Stored Procedure)是一組為了完成特定功能的SQL語句集,經(jīng)編譯后存儲(chǔ)在數(shù)據(jù)庫中。用戶通過

60、指定存儲(chǔ)過程的名字并給出參數(shù)(如果該存儲(chǔ)過程帶有參數(shù))來執(zhí)行它。存儲(chǔ)過程具有允許標(biāo)準(zhǔn)組件式編程、能夠?qū)崿F(xiàn)較快的執(zhí)行速度、能夠減少網(wǎng)絡(luò)流量等優(yōu)點(diǎn)。6.4 使用DataReader ADO.NET DataReader從數(shù)據(jù)庫中檢索只讀、只進(jìn)的數(shù)據(jù)流。所謂“只讀”,是指在數(shù)據(jù)閱讀器DataReader上不可更新、刪除、增加記錄,所謂“只進(jìn)”是指記錄的接收是順序進(jìn)行且不可后退的,數(shù)據(jù)閱讀器DataReader接收到的數(shù)據(jù)是以數(shù)據(jù)庫的記錄為單位的。查詢結(jié)果在查詢執(zhí)行時(shí)返回,并存儲(chǔ)在客戶端的網(wǎng)絡(luò)緩沖區(qū)中,直到用戶使用DataReader的Read方法對(duì)它們發(fā)出請(qǐng)求。 隨.NET Framework提供的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論