版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第1章 ASP.NET基礎
WEB基礎知識ASP.NET概述VisualStudio集成開發(fā)環(huán)境第一個ASP.NET程序ASP.NET頁面的結構ASP.NET頁面的生命周期事件
本章目標WEB基礎知識Web服務器靜態(tài)網頁動態(tài)網頁
【例1-1】Hello.htmlASP.NET概述
ASP.NET(ActiveServerPages.NET)是Microsoft.NETFramework中一套用于生成Web應用程序和XMLWebservices的技術。
代碼分離模式在代碼分離模式中將用于顯示的代碼(HTML標記、服務器控件的定義等)放在后綴為.aspx的文件中,而用于邏輯處理的代碼放到另一個文件中【例1-2】項目WebSite1第一個ASP.NET程序
ASP.NET頁面的結構
1.服務器端注釋
<%--這是一個注釋--%>2.指令
<%@PageLanguage="C#"%>3.代碼聲明塊<scriptlanguage="C#"runat="server">//代碼聲明塊開始voidShowMsg()//名為ShowMsg的用戶定義方法{Response.Write("ASP.NET教程");}</script>//代碼聲明塊結束4.代碼實施塊【例1-3】Inline.aspx
ASP.NET頁面的生命周期事件
事件引發(fā)的時機Init頁面初始化時Load頁面載入內存時控件事件響應用戶操作,如鼠標點擊Unload頁面從內存中卸載時【例1-4】cho1/Default.aspx第2章 C#語言基礎
C#語言簡介變量數據類型運算符程序流程控制方法
數組面向對象設計基礎本章目標C#語言簡介C#從C和C++語言演化而來,是Microsoft專門為使用.NET平臺而創(chuàng)建的。因為C#是近期發(fā)展起來的。所以吸取了以前的教訓,考慮了其他語言的許多優(yōu)點,并解決了它們的問題。使用C#開發(fā)應用程序比使用C++簡單,因為其語法比較簡單。但是,C#是一種強大的語言,在C++中能完成的任務在C#中也能完成。變量變量用來存儲程序中需要處理的數據,變量聲明基本語法如下:變量類型變量名例如:intage;//聲明一個整型變量ageboolisTeacher;//聲明一個布爾類型變量isTeacherstringsql;//聲明一個字符串變量sql以下是幾個不合法命名的例子:char2abc;//不合法,以數字開頭floatclass;//不合法,與關鍵字同名decimalMain;//不合法,與庫函數同名數據類型類型名說明數據范圍sbyte8位帶符號整數-128至127byte8位無符號整數0至255short16位帶符號整數-32768至32767ushort16位無符號整數0至65535int32位帶符號整數-2147483648至2147483647uint32位無符號整數0至4294967295long64位帶符號整數-9223372036854775808至9223372036854775807ulong64位無符號整數0至184467440737095516151.整數類型2.布爾類型布爾類型是用來表示真和假,只有兩種取值:真或假;在C#中可以把true或false賦給布布爾類型變量,也可以把一個邏輯表達式賦給布布爾類型變量。例如:
boolisTeacher=true;boolb=(8<5);//b值結果為假(false)3.浮點類型小數在C#中采用兩種數據類型來表示:單精度float和雙精度double,它們的差別在于取值范圍和精度不同,計算機對浮點數的運算速度大大低于對整數的運算,在對精度要求不是很高的浮點數計算中,我們可以采用float型,而采用double型獲得的結果將更為精確,當然如果在程序中大量地使用雙精度類浮點數將會占用更多的內存單元,而且計算機的處理任務也將更加繁重。4.字符類型除了數字以外計算機處理的信息主要就是字符了,C#的char類型為雙字節(jié)型,它的數據可以占有2個字節(jié)。以下方法給一個字符變量賦值,如:charc='A';5.枚舉類型枚舉enum實際上是為一組在邏輯上密不可分的整數值提供便于記憶的符號,比如我們聲明一個代表星期的枚舉類型的變量:enumWeekDay{Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday};WeekDayday;6.string類C#還定義了一個基本的類string,專門用于對字符串的操作。字符串在實際中應用非常廣泛,在類的定義中封裝了許多內部的操作,我們只要簡單地加以利用就可以了,可以用加號+合并兩個字符串,采用下標從字符串中獲取字符等。stringString1="Welcome";//定義string類型變量stringString2="Welcome"+"everyone";//字符串相加charc=String1[0];//把String1中的第一個值String1[0]賦給字符c運算符運算符說明表達式的例子+加法val=a+b;-減法val=a-b;*乘法val=a*b;/除法val=a/b;%求余val=a%b;++遞增val=++a;--遞減val=--a;1.算術運算符運算符說明表達式的例子=賦值a=b;+=加賦值a+=b;//a=a+b;-=減賦值a-=b;//a=a-b;*=乘賦值a*=b;//a=a*b;/=除賦值a/=b;//a=a/b;%=求余賦值a%=b;//a=a%b;>>=左移賦值a>>=b;//a=a>>b;<<=右移賦值a<<=b;//a=<<b;&=與賦值a&=b;//a=a&b;|=或賦值a|=b;//a=a|b;^=異或賦值a^=b;//a=a^b;2.賦值運算符運算符說明表達式的例子==等于a==b!=不等于a!=b<小于a<b>大于a>b<=小于或等于a<=b>=大于或等于a>=b3.關系運算符4.邏輯運算符C#語言提供了三種邏輯運算符:&&邏輯與、||邏輯或、!邏輯非運算符說明表達式的例子<<左移a<<b>>右移a>>b&與a&b|或a|b^異或a^b~非~a5.位運算符6.三元運算符三元運算符?:有時也稱為條件運算符。對條件表達式b?x:y,先計算條件b然后進行判斷,如果b的值為true則運算結果為x的值,否則運算結果為y的值。例如:x=(10>30)?1:0;//因為10>30為假,所以結果x值為0x=(10<30)?1:0;//因為10<30為真,所以結果x值為17.new運算符new運算符用于創(chuàng)建一個新的類型實例。如:ArrayListlst=newArrayList();//創(chuàng)建一個ArrayList類的對象int[]arr=newint[10];//創(chuàng)建一個數組實例8.運算符的優(yōu)先級當一個表達式包含多樣運算符時,運算符的優(yōu)先級控制著單個運算符求值的順序。例如表達式x+y*z按照x+(y*z)求值,因為*運算符比+運算符有更高的優(yōu)先級,這和數學運算中的先乘除后加減是一致的。
程序流程控制
條件控制if、switch循環(huán)控制while、for、foreach跳轉語句break、continue條件語句1.if語句if語句是最常用的選擇語句,它根據布爾表達式的值來判斷是否執(zhí)行后面的內嵌語句。格式如下:if(條件表達式){語句塊l//要處理的程序}[else{語句塊2//要處理的程序}]【例2-1】
ifDemo.aspx
switch語句switch語句用于多分支選擇。如果想把一個變量或表達式與許多不同的值進行比較,并根據不同的比較結果執(zhí)行不同的程序段,應用switch語句就會使結構簡明清晰。格式如下:
switch(測試表達式){case值1:要處理的語句塊1;
case值2:要處理的語句塊2;…default:默認的語句塊n;
}【例2-2】switchDemo.aspx循環(huán)語句
while語句while語句有條件地將內嵌語句執(zhí)行0遍或若干遍,語句的格式為:While(條件){循環(huán)體}【例2-3】
whileDemo.aspx
do-while語句do-while語句與while語句與while語句基本類似,不同點在于其條件測試要在每次循環(huán)體執(zhí)行后進行,所以,無論是否滿足條件,至少執(zhí)行一次循環(huán)體。格式如下:do{循環(huán)體}while(條件);//注意語句后面的分號不可缺少【例2-4】
doWhile.aspx
for語句for語句執(zhí)行一個語句或者一個語句塊,直到指定的條件表達式的值為false為止。在先知道循環(huán)次數的情況下,使用for循環(huán)是比較方便的。格式如下:for([初始化表達式];[條件表達式];[更新表達式]){循環(huán)體}【例2-5】forDemo.aspx4.foreach語句foreach語句常用在數組和集合中對元素進行迭代。它是將集合中的每一個項目代入變量中進行處理。當然,變量也是根據集合項目的類型進行聲明的。格式如下:foreach(對象類型變量in集合){循環(huán)體}【例2-6】foreachDemo.aspx
跳轉語句
(1)break語句
用于終止它所在的最近的封閉循環(huán)或條件語句。格式如下:break;
(2)continue語句
用于結束當前的重復過程,返回循環(huán)語句的開始處,即讓循環(huán)提前進入到下一次。格式如下:continue;
【例2-7】
continueDemo.aspx
方法
方法是類中用于執(zhí)行計算或其他行為的成員,類中方法的聲明格式如下:成員訪問標識符返回值類型方法名稱(參數列表){//方法的內容}【例2-8】Method.aspx
數組在進行批量處理數據的時候我們要用到數組,數組是一組類型相同的有序數據,存放在相鄰的內存塊中。數組按照數組名、數據元素的類型和維數來進行描述,C#中,數組中的元素可以是任何數據類型。
(1)聲明數組數組的聲明形式是在類型和數組變量名稱之問插入一對方括號,如下所示:int[]myArray;
上面語句聲明了一個名為myArray的變量,它是一個整型數組。(2)數組的初始化例如下面語句聲明一個一維整數數組myArray,并賦初值1、3、5、7、9:int[]myArray={1,3,5,7,9};(3)數組元素的訪問可以通過下標來訪問數組中的各個數組元素。數組元素的下標從0開始,即第一個元素i對應的下標是0,后面逐個遞增。例如:intvalue=myArray[0];//value為數組中第一個元素的值,即l【例2-9】Array.aspx
面向對象設計基礎對象的概念類的概念定義類使用類構造函數方法重載類的繼承面向對象設計基礎--對象的概念
在我們的日常生活中,對象是指可辨識的一種實體。例如汽車、房子、書、文檔和支票等?,F(xiàn)實世界的對象有特征和行為,如“汽車”對象的一部分特性為:顏色、重量、型號年份、車輪數目、發(fā)動機功率。“汽車”能夠執(zhí)行的動作是:啟動、開始、加速、倒車。程序中,對象是指類的實例。面向對象設計基礎--類的概念
在現(xiàn)實世界中,不同的事物分屬不同的類別,比如狗屬于寵物類別,龍蝦屬于海鮮類;在編程世界中,將相似的對象或具有相同特性的對象歸為一個類。每個類用來描述一組相似的對象。類的基本要素包括數據和方法。面向對象設計基礎--定義類在類定義中需要使用關鍵字class,其簡單的定義格式為:[訪問修飾符]class類名稱[:[基類][,接口序列]]{[字段聲明][構造函數][方法][事件]}面向對象設計基礎--定義類
例如,定義一個學生類,學生有姓名、學號、課程成績信息:usingSystem;class
Student{
public
stringstudentNO;
public
stringstudentName;
public
int[]grades=new
int[2];
public
voidintroduce(){
Console.WriteLine("我的學號是"+studentNO);
Console.WriteLine("我的名字是"+studentName);}
public
doublegetAverage(){
return(grades[0]+grades[1])/2.0;}}面向對象設計基礎--使用類
(1)聲明對象類名對象名;Studentstu;(2)實例化對象創(chuàng)建類的對象的操作,被稱為類的實例化。用new關鍵字來創(chuàng)建對象。實例化的語法格式:對象名=new類名(參數);例如:Studentstu=newStudent();
(3)使用對象訪問對象實質是訪問對象成員,訪問對象成員使用“.”運算符。例如:stu.studentName="張三";stu.studentNO="201101";stu.grades[0]=80;stu.grades[1]=60;【例2-10】classDemo.aspxStudent.cs面向對象設計基礎--構造函數
構造函數是一個特殊的方法,用于在建立對象時進行初始化的動作,每當創(chuàng)建一個對象時,都會先調用類中定義的構造函數。使用構造函數的好處是它能夠確保每一個對象在被使用之前都適當地進行了初始化的動作。構造函數還具有以下特點:
每個類至少有一個構造函數。若程序代碼中沒有構造函數則系統(tǒng)會自動提供一個默認的構造函數
構造函數總是和它的類名相同。構造函數不允許有返回類型(包括void類型)?!纠?-11】Student2.csclassDemo2.aspx面向對象設計基礎--方法重載
實現(xiàn)用同名的方法對不同類型的數據做不同的運算,就稱為方法重載。當在程序中要調用重載方法時,c#匹配重載方法的依據有以下三個方面:1) 參數表中的參數類型2) 參數個數3) 參數順序【例2-12】method2.aspx面向對象設計基礎--類的繼承
在面向對象編程中,我們把從另一個類繼承數據和方法的類稱為子類,被繼承的類稱為父類。每個子類與父類具有共同的特性。
創(chuàng)建派生類要在派生類的名字后面加上冒號“:”,后面再跟上基類的名字。創(chuàng)建派生類使用的語法如下:
[訪問修飾符]class派生類名稱:基類名稱{//程序代碼}【例2-13】Shape.csCircle.csshapeDemo.aspx.cs第3章 服務器端控件
常用服務器端控件數據驗證控件本章目標常用服務器端控件
Label控件Button控件TextBox控件RadioButton控件RadioButtonList控件DropDownList控件ListBox控件Image控件HyperLink控件ImageButton控件CheckBox控件CheckBoxList控件Label控件
LabelWeb服務器控件為開發(fā)人員提供了一種以編程方式設置Web窗體頁中文本的方法。通常當希望在運行時更改頁面中的文本時就可以使用Label控件。當希望顯示的內容不可以被用戶編輯時,也可以使用Label控件。。其使用語法為:<ASP:LabelId="…"Runat="Server"Text="所要顯示的文字"/>或<ASP:LabelId="…"Runat="Server">所要顯示的文字</ASP:Label>【例3-1】Label.aspxButton控件
Button控件用于接收Click事件,并執(zhí)行相應的事件程序。通過使用form的defaultbutton屬性指定按鈕的ID,可以設置.aspx頁面的默認按鈕。Button控件的OnClientClick屬性可用于執(zhí)行客戶端語句或函數。【例3-2】ButtonDemo.aspx
TextBox控件
TextBox控件用來接收鍵盤輸入的數據。TextBox有一個OnTextChanged事件,如果TextBox內的文本被改動而且AutoPostBack設為True,則焦點離開TextBox時會立即觸發(fā)OnTextChanged事件。AutoPostBack屬性是多數表單控件所擁有的屬性。如果設置了某控件的AutoPostBack屬性為true,并指定了處理過程,一旦該控件內容發(fā)生變化,就會執(zhí)行指定的處理過程?!纠?-3】AutoPostBack.aspxRadioButton控件
RadioButton控件用于從多個選項中選擇一項,屬于多選一控件。RadioButton控件的基本功能相當于HTML控件的<InputType="Radio">。若希望在一組RadioButton控件中只能選擇一個時,只要將它們的GroupName設為同一個名稱即可。HTML控件的<InputType="Radio">。【例3-4】RadioButton.aspx
RadioButtonList控件
當我們使用幾個RadioButton控件時,在程序的判斷上非常麻煩,RadioButtonList控件提供一組RadioButton,讓我們方便的取得用戶選取的項目?!纠?-5】RadioButtonList.aspx
DropDownList控件
屬性說明AutoPostBack設定是否立即響應OnSelectedIndexChanged事件Items返回DropDownList控件中ListItem的對象SelectedIndex返回被選取到ListItem的Index值SelectedItem返回被選取到ListItem對象DropDownList控件是一個下拉式的選擇控件【例3-6】DropDownList.aspxListBox控件
ListBox控件和DropDownList控件的功能幾乎是一樣,只是ListBox控件是一次將所有的選項都顯示出來?!纠?-7】ListBoxDemo.aspxImage控件
Image控件是用來顯示圖片。其使用語法為:<ASP:ImageId="..."Runat="Server"ImageUrl="圖片所在地址"AlternateText="圖形沒加載時的替代文字"…/>HyperLink控件
HyperLink控件可以用來設定超級鏈接,其使用語法為:<ASP:HyperlinkId="…"Runat="Server"Text="超級鏈接文字"ImageUrl="圖片所在地址"Target="目標窗口"【例3-8】HyperLink.aspxImageButton控件
ImageButton控件用圖片來當做按鈕。其使用語法為:<ASP:ImageButtonId="..."Runat="Server"Command="命令名稱"CommandArgument="命令參數"OnClick="事件程序名"/>【例3-9】ImageButton.aspxCheckBox控件
CheckBoxWeb服務器控件為用戶提供了一種在真/假、是/否或開/關選項之間切換的方法。CheckBox控件和RadioButton控件不同的地方是它允許多選【例3-10】CheckBox.aspx
CheckBoxList控件
當使用一組的CheckBox控件時,在程序的判斷上非常麻煩,因此CheckBoxList控件和RadioButtonList控件一樣是讓我們方便的取得用戶選取的項目。【例3-11】CheckBoxList.aspx數據驗證控件
RequiredFieldValidator控件CompareValidator控件RangeValidator控件RegularExpressionValidator控件ValidationSummary控件RequiredFieldValidator控件
RequiredFieldValidator控件可以用來要求用戶輸入必需數據【例3-12】Required.aspxCompareValidator控件
CompareValidator控件可將被驗證數據與特定的數據(如常量、控件值或數據庫中的數據等)比較,并根據比較的結果決定是否允許提交。【例3-13】Compare.aspx
RangeValidator控件
RangeValidator控件可以限制用戶所輸入的數據在指定的范圍之內【例3-14】Range.aspx
RegularExpressionValidator控件
RegularExpressionValidator控件可判斷數據是否符合特定的格式,并根據判斷結果決定是否允許提交。符號說明[]用來定義單一字符的內容,例如:[a-zA-Z]只接受a-z或是A-Z的英文字符。[x-zX-Z] 只接收小寫的x-z或大寫的X-Z。[win]只接收w、i、n的英文字母。{}用來定義需輸入的字符個數,例如:[a-zA-Z]{4} 表示接受只接收四個字符。[a-z]{4} 表示只接收共四個a-z小寫字符。[a-zA-Z]{4,6} 表示最少接受四個字符,最多接受六個字符。[a-zA-Z]{4,} 表示最少接受四個字符,最多不限制。.符號可以用來表示接收除了空白外的任意字符,例如:.{4} 表示接收四個除了空白外的任意字符。*表示最少可以不輸入,最多到無限多個字符。例如:[a-zA-Z]* 表示不限制數目,接受a-z或A-Z的字符,也可以不輸入。+表示最少輸入1個字符,最多到無限多個字符,例如:[a-zA-Z]+ 表示不限制數目,接受a-z或A-Z的字符,但是至少輸入一個字符[^...]表示不包含的字符|表示或,只要符合兩個規(guī)則的其中一個即接受。例如,用戶只要輸入全部四個數值或是全部四個字母都接受的話,驗證規(guī)則可以寫成[a-zA-Z]{4}|[0-9]{4}\d匹配任何一個數字(0~9)\D匹配任何一個非數字(^0~9)下面是幾個正則表達式例子:\d{6}:表示6個數字,例如郵政編碼[0-9]:表示0~9十個數字\d*:表示任意個數字\d{3,4}-\d{7,8}:表示固定電話號碼\d{2}-\d{5}:由兩位數字、一個連字符串再加5位數字[0-9]{2,5}:表示只可輸入數字,至少兩位數,至多五位數【例3-15】Regular.aspxValidationSummary控件
ValidationSummary控件最主要的功能是用來顯示沒有通過驗證控件的ErrorMessage屬性,使用ValidationSummary控件之前,必須先設定其他驗證控件的ErrorMessage?!纠?-16】Summary.aspx第4章 ADO.NET數據庫訪問技術
ADO.NET基本概念ADO.NET對象模型SqlConnection
Command
DataReader
DataSet、DataTable
數據庫操作類本章目標ADO.NET基本概念
ASP.NET程序數據庫ADO.NET圖4-1ASP.NET通過ADO.NET操作數據庫ADO.NET是NETFramework用于數據訪問的組件。ADO.NET對象可以讓我們快速簡單的來存取各種數據,ASP.NET通過ADO.NET操作數據庫ADO.NET對象模型
ADO.NET對象模型中有五個主要的組件,分別是Connection對象、Command對象、DataAdapter、DataSet以及DataReader。SqlConnection
屬性說明DataSource設置要連接的SQLServer服務器名稱或IP地址ServerDatabase要連接的數據庫InitialcatalogIntegratedSecrity指定是否使用信任連接。Trusted_ConnectionUserID登入數據庫的賬號Password登入數據庫的密碼ConnectionTimeout連接超時時間Connection主要是連接程序和數據庫的“橋梁”,要存取數據源中的數據,首先要建立程序和數據源之間的連接。1.混合模式的連接SQLServer數據庫混合模式可以由用戶自己輸入登錄與口令來連接到數據庫,可如下創(chuàng)建SqlConnection對象:
stringconnStr="server=(local);uid=sa;pwd=;database=demo"; SqlConnectionconn=newSqlConnection(connStr);連接串為“server=(local);uid=sa;pwd=;database=demo”,其含義是連接到本機SQLSERVER數據庫服務器中demo數據庫,使用登錄名為sa,口令為空。注意其中uid、pwd分別為UserID、Password的簡寫。2.使用windows驗證方式以windows驗證方式登錄SQLServer數據庫的SqlConnection對象用如下方式創(chuàng)建:
stringconnectionString="server=(local);database=demo;trusted_connection=true";SqlConnection
conn
=
new
SqlConnection
(connectionString);該語句以信任方式連接到SQLServer,由于采用Windows驗證,所以無需給出登錄與口令?!纠?-1】connection.aspxCommand
Command主要可以用來對數據庫發(fā)出一些指令,通過Command可以對數據庫進行查詢、增加、修改、刪除等操作,以及調用數據庫中的存儲過程等。建立Command對象的常用語法為:
SqlCommandcmd=newSqlCommand(cmdText,myConnection)方法描述ExecuteReader執(zhí)行CommandText屬性所規(guī)定的操作,并創(chuàng)建DataReader對象ExecuteNonQuery執(zhí)行CommandText屬性所規(guī)定的操作,一般為Update、Insert、Delete及其他沒有返回值的SQL命令,返回受影響的行數ExecuteScalar執(zhí)行CommandText屬性所規(guī)定的操作,返回執(zhí)行結果中首行首列的值。如果結果集多于一行一列,它將忽略其余部分表4-4Command的方法增加、刪除、修改數據【例4-2】commandInsert.aspx
【例4-3】commandUpdate.aspx
【例4-4】commandDelete.aspx
執(zhí)行帶參數的Command【例4-5】CommandParamrter.aspxExecuteScalar方法【例4-6】ExecuteScalar.aspxDataReader當我們只需要順序的讀取數據而不需要其他操作時,可以使用DataReader對象。DataReader對象一次讀取一條記錄,而且這些數據是只讀的,并不允許作其他的操作。由于DataReader在讀取數據的時候限制了每次以只讀的方式讀取一條記錄,所以使用DataReader不但節(jié)省資源而且效率很高。DataReader類是抽象類,因此不能直接實例化,而是通過執(zhí)行Command對象的ExecuteReader方法返回DataReader實例。如:SqlDataReaderreader=cmd.ExecuteReader();【例4-7】DataReader.aspxDataSet DataSet對象DataSet可以視為一個內存數據庫,是由許多數據表、數據表聯(lián)系(Relation)、約束(Constraint)、記錄(Row)以及字段(Column)對象的集合所組成
DataTable對象
DataTable是構成DataSet最主要的對象,DataTable對象是由DataColumns集合以及DataRows集合所組成,DataSet的數據就是存放在DataTable對象中。
【例4-8】DataTableDemo.aspx數據庫操作類
從軟件工程的角度,代碼要盡可能的實現(xiàn)重用,或者說,同樣的代碼要避免重復編寫。在我們前面的編程中,可以感覺到數據庫操作的代碼有許多重復的地方,因此,下面我們把對數據庫操作的共同部分提煉出來,封裝到一個類中,以后我們可以調用類中的方法,輕松的實現(xiàn)數據庫的操作。并把編程的精力集中在實現(xiàn)應用的邏輯上?!纠?-9】DBHelper.csDBHelperDemo.aspx第5章 VS.NET開發(fā)會員管理系統(tǒng)
項目基礎會員管理系統(tǒng)發(fā)布網站本章目標項目基礎
VS.NET中的表格操作插入表格。
選擇表、行、列、單元格。
設置屬性。
單元格的合并。
行、列的插入與刪除。
程序排錯與調試
1.錯誤類型語法錯誤運行錯誤算法和邏輯錯誤2.使用調試器
設置一個斷點逐語句運行方式逐過程運行方式運行到光標處方式斷點窗口停止調試3.調試實例
【例5-1】Session對象
Session對象的生命周期
Session對象也有其生命周期。在默認的情況下,如果瀏覽器在20分鐘內沒有再訪問網站中的任何網頁,則該網站為其建立的Session對象將自動釋放。Session對象的讀寫寫數據到Session對象中用如下格式:Session[“變量名”]=“內容”例如:當用戶登錄成功后,把用戶名存到名為UserName的Session變量中:Session[“UserName”]=“小王”下面代碼讀取UserName的Session變量值:strings;s=Session[“UserName”].ToString();【例5-2】5-2.aspx
編程規(guī)范
方法、屬性、變量命名規(guī)范方法、屬性和變量命名應盡量遵循下列規(guī)范:避免容易被主觀解釋的難懂的名稱,如方法名DoThis(),或者屬性名xy6。這樣的名稱會導致多義性。在面向對象的語言中,在類屬性的名稱中包含類名是多余的,如Book.BookTitle。而是應該使用Book.Title。使用動詞-名詞的方法來命名對給定對象執(zhí)行特定操作的例程,如CalculateInvoiceTotal()。在允許函數重載的語言中,所有重載都應該執(zhí)行相似的函數。在變量名中使用互補對,如min/max、begin/end和open/close。使用大小寫混合的格式,對例程名稱每個單詞的第一個字母都是大寫的。對于變量名,第一個單詞外每個單詞的第一個字母都是大寫的。布爾變量名應該包含Is,這意味著Yes/No或True/False值,如IsAdmin。即使對于可能僅出現(xiàn)在幾個代碼行中的生存期很短的變量,仍然使用有意義的名稱。僅對于短循環(huán)索引使用單字母變量名,如i或j??赡艿那闆r下,盡量不要使用原義數字或原義字符串,如Fori=1To7。而是使用命名常數,如Fori=1ToNUM_DAYS_IN_WEEK以便于維護和理解。web控件的命名
web控件用控件名縮寫+控件作用單詞的全稱來命名,單詞的第一個字母必須大寫,如果有多個單詞,則為控件縮寫+控件作用的第一個單詞+第二個單詞的全稱,每個單詞名的第一個字母必須大寫;例如:txtPassword(密碼文本框),btnSubmit(提交按鈕)。
代碼書寫規(guī)范代碼書寫應盡量遵循下列規(guī)范:建立標準的縮進大?。ㄈ缢膫€空格),并一致地使用此標準。用規(guī)定的縮進對齊代碼節(jié)。為注釋和代碼建立最大的行長度,以避免不得不滾動源代碼編輯器,并且可以提供整齊的硬拷貝表示形式。使用空白為源代碼提供結構線索。這樣做會創(chuàng)建代碼“段”,有助于讀者理解軟件的邏輯分段。當一行內容太長而必須換行時,在后面換行代碼中要使用縮進格式,如下:stringinserString="InsertIntoUsers(username,password,email,sex,address)"+"Values('Soholife','chenyp','soholife@','male','北京')";只要合適,每一行上放置的語句避免超過一條。注釋使用注釋應注意以下幾點:在每個例程的開始,提供標準的注釋以指示例程的用途、假設和限制很有幫助。注釋應該是解釋它為什么存在和可以做什么的簡短介紹。如果需要用注釋來解釋復雜的代碼節(jié),請檢查此代碼以確定是否應該重寫它。盡一切可能不注釋難以理解的代碼,而應該重寫它。盡管一般不應該為了使代碼更簡單以便于人們使用而犧牲性能,但必須保持性能和可維護性之間的平衡。注釋應該闡明代碼,而不應該增加多義性。5.不規(guī)范代碼實例【例5-3】
會員管理系統(tǒng)
系統(tǒng)分析與設計 會員管理系統(tǒng)是一般商務網站都具有的子系統(tǒng),主要用于對一些敏感數據、網頁的保護以及提供一些贏利性質的信息服務。當用戶要求訪問這些網頁時,系統(tǒng)將對其進行身份驗證,以確認其訪問權限。會員管理系統(tǒng)一般需要實現(xiàn)下面功能:會員登錄頁面注冊頁面修改個人信息的頁面查看個人注冊信息的頁面提供密碼查詢功能表5-2會員管理系統(tǒng)的程序文件文件說明Login.aspx會員登錄頁面Main.aspx主頁Register.aspx注冊頁面Person.aspx查看個人注冊信息的頁面Edit.aspx修改個人信息的頁面Step1.aspx密碼查詢步驟1頁面Step2.aspx密碼查詢步驟2頁面圖5-19用戶表Users的結構登錄頁面主頁面注冊頁面顯示個人信息頁面修改個人信息頁面取回口令(1)頁面取回口令(2)頁面發(fā)布網站
1.配置ASP.NET的運行環(huán)境運行ASP.NET網站的電腦一般需要滿足兩個條件:(1)安裝了Internet信息服務(IIS)(2)安裝了.NETFramework2.在VS中發(fā)布網站程序在VS2013中打開站點member,單擊“生成”―>“發(fā)布網站”,彈出“發(fā)布網站”對話框,設置目標路徑“C:\MyWeb”
3.配置站點
要顯示瀏覽動態(tài)頁面,我們需要把動態(tài)頁面文件放在某個虛擬目錄下。所謂虛擬目錄,就是在URL地址中使用的目錄名稱,有時也稱作URL映射。虛擬目錄的名稱可以與物理目錄相同,也可以不相同。4.開啟ASP.NET支持5.訪問網站 根據前面配置,在瀏覽器網址欄輸入在瀏覽器網址欄輸入“http://localhost/mymember“第6章 數據窗體設計
數據綁定簡介Repeater控件DataList控件GridView控件本章目標數據綁定簡介
數據綁定是使頁面上控件的屬性與數據庫中的數據產生對應關系,每當數據源中的數據發(fā)生變化且重新啟動網頁時,被綁定對象中的屬性將隨數據源而改變。數據綁定語法使用<%#%>,當調用控件或父控件的DataBind方法時,數據綁定表達式才會被計算并顯示。 綁定到變量【例6-1】
BindVar.aspx
綁定到方法【例6-2】BindMethod.aspx
Repeater控件
Repeater控件最主要的用途,是可以將數據依照我們所制定的格式逐一顯示出來。只要將想要顯示的格式先定義好,Repeater就會依照我們所定義的格式來顯示;這個預先定義好的格式我們稱為”模板”(Template)。使用模板可以讓我們的資料可以更容易、更美觀的呈現(xiàn)給使用者。 通過頁眉模板、奇數行數據模板、偶數行數據模板、分隔模板以及頁腳模板,可以靈活控制記錄的顯示格式。Repeater控件所支持各種模板的意義如下:ItemTemplate:為數據源中的每一行都呈現(xiàn)一次的模板。AlternatingItemTemplate:與ItemTemplate元素類似,但在Repeater控件中隔行呈現(xiàn)一次。HeaderTemplate:一般用于設置標題或特殊格式標記(如<Table>標記)等。SeparatorTemplate:用于指定如何分隔記錄行。FooterTemplate:用于指定在所顯示記錄的尾部,應顯示什么信息。 當數據源有記錄時,每取一條記錄,Repeater控件都按照ItemTemplate或AlternatingItemTemplate模板定義的格式進行顯示;如果數據源中沒有數據,則Repeater控件在界面上不會有任何顯示。值得注意的是,ItemTemplate模板是必須要定義的?!纠?-3】Repeater.aspx
DataList控件
DataList控件在一個重復列表中顯示數據項,并且還可以支持選擇和編輯項目。可使用模板對DataList中列表項的內容和布局進行定義。每個DataList必須定義一個ItemTemplate;另外,還有好幾個可選模板可用于定制列表的外觀,這些模板的說明見表6-1描述。表6-1DataList的模板模板名稱說明ItemTemplate項目的內容和布局。必選AlternatingItemTemplate替換項的內容和布局SeparatorTemplate在各個項目(以及替換項)之間分隔符SelectedItemTemplate選中項目的內容和布局EditItemTemplate正在編輯項目的內容和布局HeaderTemplate標題的內容和布局FooterTemplate腳注的內容和布局
【例6-4】DataList.aspx
GridView控件
GridView控件簡介 GridView控件是DataGrid控件的后繼控件。DataGrid是一個功能非常強大的通用控件,但它要求編寫大量定制代碼,以實現(xiàn)常用的操作,諸如分頁、排序、編輯或刪除數據。GridView控件則與新的數據源控件系列緊密結合,自動提供這些常用功能。 GridView控件可以顯示、編輯和刪除多種不同的數據源(例如數據庫、XML文件和公開數據的業(yè)務對象)中的數據。 GridView控件可以采用兩種方式綁定數據選項:一種方法是使用DataSourceID屬性進行數據綁定,另一種方法是使用DataSource屬性進行數據綁定。第一種方法可以直接將GridView控件綁定到數據源控件,這樣可以利用數據源控件的功能自動實現(xiàn)排序、分頁和更新功能。第二種方法能夠綁定到包括ADO.NET數據集和數據讀取器在內的各種對象,但是需要為所有附加功能(如排序、分頁和更新)編寫后臺代碼。GridView控件常用屬性GridView控件常用屬性見教材表6-4。綁定列說明BoundField默認的數據綁定列類型,顯示數據庫中取出的文本。TemplateField類似于DataList中的ItemTemplate模板列CheckBoxField使用復選框控件顯示布爾類型數據CommandField為GridView控件提供創(chuàng)建命令按鈕列的功能ButtonField它與CommandField類似,二者都可以為GridView控件創(chuàng)建命令按鈕列。CommandField定義的按鈕列主要用于選擇、添加、刪除等操作ImageField可以在GridView控件所呈現(xiàn)的表格中顯示圖片列。一般來說,綁定的是圖片的路徑。HyperLinkField將所綁定的數據以超鏈接形式顯示出來。GridView控件的數據綁定列GridView的數據顯示【例6-5】GridView服務器控件的排序、分頁及常用方法。(網站項目GridViewl)GridView分頁【例6-6】網站項目GridView2
GridView的數據編輯【例6-7】網站項目GridView3GridView中使用下拉列表 在編輯與顯示時,我們希望類別顯示的是具體的名稱而不是代碼。我們可以使用模板列來實現(xiàn)這個功能。當將某列轉換成模板列時,就意味著可以為該列設置多種不同的狀態(tài)(例如被選擇狀態(tài)、編輯狀態(tài)等),并為不同的狀態(tài)增添控件和方法。 【例6-8】用下拉列表編輯圖書類別。
(網站項目GridView4)第7章內置對象
本章目標Application對象Request對象Response對象Server對象Cookie對象Application對象
網站中所有的ASP.NET程序構成了一個Web應用系統(tǒng),Web站點是一個多用戶的應用程序,可供所有在線用戶共享的信息應放在Application對象中。
Application對象的生命周期 起始于當應用程序的第一個頁面被請求時,終于站點停止運行時。
Application對象的讀寫
Application對象利用“鍵—值”對的字典方法來定義,其中“鍵”為字符串,代表狀態(tài)的“名”,“值”可以是任何類型的數據。
Application[“變量名”]=值; strings=Application[“變量名”].ToString();Application對象的鎖定
由于Application對象是所有用戶共享的,為了避免修改時出現(xiàn)出現(xiàn)爭用、死鎖或訪問沖突,在對Application對象進行修改時,必須先將其鎖定,修改完之后進行解鎖。Application.Lock();//鎖定ApplicationApplication[“變量名”]=值;//修改ApplicationApplication.UnLock();//解鎖Application【例7-1】applicationCount.aspxRequest對象
當客戶端向服務器端發(fā)出HTTP請求時,可以通過HTTP請求獲得客戶端信息。Request是HttpRequest類的實例,用來表示特定HTTP請求的值和屬性,其中包括所有URL參數和客戶端所發(fā)送的信息。Request對象的常用方法如下:MapPath將請求的URL中的虛擬路徑映射到服務器上的物理路徑SaveAs 將HTTP請求的信息儲存到磁盤中【例7-2】Request.aspx
Response對象 Response對象主要是輸出數據到客戶端,Response對象的類別名稱是HttpResponse屬性說明BufferOutput設置HTTP輸出是否要做緩沖處理,預設為TrueCache返回目前網頁緩存的設置Charset設置或取得HTTP的輸出字符編碼Cookies返回目前請求的HttpCookieCollection對象集合IsClientConnected返回客戶端是否仍然和Server連接方法描述BinaryWrite將一個二進制字符串寫入HTTP輸出流Clear清除緩沖區(qū)流中的所有內容輸出End將當前所有緩沖的輸出發(fā)送到客戶端,停止該頁的執(zhí)行,并引發(fā)Application_EndRequest事件Flush向客戶端發(fā)送當前所有緩沖的輸出Redirect將客戶端重定向到新的URL頁面。Write將信息寫入HTTP輸出內容流WriteFile將指定的文件直接寫入HTTP內容輸出流【例7-3】Response_End.aspxServer對象 Server對象也是Page對象的成員之一,主要提供一些處理網頁請求時所需的功能。Server對象的對象類別名稱是HttpServerUtility(1)HtmlEncode以及HtmlDecode方法【例7-4】HtmlEncode.aspx
(2)UrlEncode以及UrlDecode方法【例7-5】UrlEncode.aspx
(3)獲取與虛擬路徑或相對路徑對應的實際路徑【例7-6】MapPath.aspx
Cookie對象Cookie的特點
Cookies將數據存放于客戶端的磁盤上,在Cookie中只能含有較少量的信息,通常不超過4096個字節(jié)
Cookie的讀寫寫入數據:Response.Cookies[“數據名稱”].Value=數據讀取數據:data1=Request.Cookies[“數據名稱”].ValueCookie的生存期
如果不設置Expires屬性,cookie就在當前會話結束時終止。我們可以在程序中自行設定有效日期,只要指定Cookie變量的Expires屬性即可。Response.Cookies[CookieName].Expires=日期Cookie驗證的安全性
在使用Cookie驗證使用者時,必須要考慮到身份驗證的問題?!纠?-7】CookieDemo.aspx【例7-8】Cookies2.aspx.aspx第8章母板頁與主題
本章目標母版頁主題與外觀用戶控件母版頁母版頁概述ASP.NET2.0中提供了母版頁(Master頁面)來簡化設計,母版頁(Master頁面)可以為應用程序中的所有頁面定義標準的布局和操作方式。母版頁的擴展名為“master”
母版頁和其他頁面主要的區(qū)別在于,Masterpage包含占位符ContentPlaceHolder,ContentPlaceHolder控件起到一個占位符的作用母版頁應用實例【例8-1】站點8-1內容頁中訪問母版頁中的內容
由于在運行時,母版頁與內容頁將會合并在一起,從而構成最終的頁面,因此內容頁的代碼可以訪問母版頁中的控件。具體用法是在內容頁后臺代碼中調用FindControl方法獲取對母版頁中控件的引用。
【例8-2】站點8-2
主題與外觀
外觀可以理解成對服務器控件的樣式定義,以.skin文件來存放對頁面中各個控件的屬性設置,這些屬性值將應用于Web應用程序中的同類控件中。 主題就是一組屬性定義的集合,將樣式、外觀以及其他文件如JavaScript文件、圖像文件、資源文件等綜合放置在一個特殊的文件夾中就形成一個主題。主題與外觀概述1.外觀文件 外觀文件以“.skin”為后綴,為一批服務器控件定義外貌。例如,可以定義一批TextBox或者Button服務器控件的底色、前景色;定義GridView控件的頭模板、尾模板的樣式等。對控件顯示屬性的定義必須放在的外觀文件中;外觀文件必須放在“主題目錄”下,而主題目錄又必須放在專用目錄App_Themes的下面。2.主題主題是ASP.NET2.0中新增的一項功能,存在于網站根目錄下App_Themes文件夾中。它允許開發(fā)者將頁面的樣式和布局信息,存放到一個獨立的文件中,總稱為主題(Theme)。接下來,可以將該主題應用于任何站點,來控制站點中頁面和控件的外觀。通過對主題的切換,便可以輕松的實現(xiàn)網站風格的切換。3.樣式一個主題中除了外觀文件外,還有樣式文件,即*css文件,在ASENET2.0中,HTML控件和ASP.NET服務器控件都支持Style對象,用來定義該控件的樣式。CSS樣式可以定義控件的靜態(tài)行為。
外觀文件(.skin文件)和樣式表文件(.CSS文件)的主要區(qū)別如下:(1)級聯(lián)樣式表只能用來定義HTML的標記。而外觀文件可以用來定義服務器控件。(2)可以通過外觀文件使頁面中的多個服務器控件具有相同的外觀,而如果用樣式表來實現(xiàn),則必須設置每個控件的CssClass屬性,才能將樣式表中定義的CSS類應用于這些控件,非常煩瑣。(3)使用樣式表文件雖然能夠控制頁面中各種元素的樣式,但是有些服務器控件的屬性卻無法用樣式表控制,而外觀文件則可以輕松完成這些功能?!纠?-3】站點8-3
將主題文件應用于整個應用程序
為了將主題文件應用于整個應用項目,可以在應用項目根目錄下的Web.config文件中進行定義。例如,要將Themes1主題目錄應用于應用項目的所有文件中,可以在Web.confiog文件中定義如下:<configuration><system.web><pagestheme="Themes1"/></system.web></configuration>主題應用的規(guī)則和優(yōu)先級(1)如果設置了應用程序或頁的Theme屬性,則主題中控件的設置和頁中控件的設置將進行合并,以構成控件的最終設置。(2)如果同時在控件和主題中定義了控件的屬性設置,則主題中的控件屬性設置將重寫任何頁中的控件上的設置。(3)如果將主題通過設置頁面的StyleSheetTheme屬性作為樣式表主題來應用,則頁中的屬性設置優(yōu)先于主題中屬性定義的設置。(4)當在頁級別或容器級別禁用主題時,會對頁或容器包含的所有控件禁用主題,如PanelWeb服務器控件或者用戶控件。(5)頁面聲明中的主題覆蓋web.config文件中指定的所有主題。(6)如果在web.config里指定了主題,則這個設置將覆蓋頁面的StyleSheetTheme設置和頁面上的控件設置。(7)CSS樣式的定義采取就近和后定義的起作用的原則。如果前后對一個控件定義了相同的CSS,那么后面的定義將起作用而忽略前面的定義。(8).aspx頁面中如果設置了<headrunat=”server”>,則ASP.NET2.0將自動引入主題中的CSS文件。(9)在主題文件夾中可以包括圖片,這在TreeView、Menu等服務器控件中使用自定義圖片時特別有用。這些圖片的地址只需要提供與外觀文件.skin的相對路徑即可,ASP.NET2.0會自動調整為正確的URL地址。用戶控件
用戶控件(UserControl)是一種自定義的組合控件,通常由系統(tǒng)提供的可視化控件組合而成。在用戶控件中不僅可以定義顯示界面,還可以編寫事件處理代碼。當多個網頁中包括有部分相同的用戶界面時,可以將這些相同的部分提取出來,做成用戶控件。用戶控件與網頁之間還是存在著一些區(qū)別,這些區(qū)別包括:用戶控件文件的擴展名為.ascx而不是.aspx;代碼的分離(隱藏)文件的擴展名是.ascx.cs而不是.aspx.cs;在用戶控件中不能包含<HTML>、<BODY>和<FORM>等HTML語言的標記;用戶控件可以單獨編譯,但不能單獨運行。只有將用戶控件嵌入到.aspx文件中時,才能和ASP.NET網頁一起運行。用戶控件以<%@Control%>指令開始。用戶控件使用文件擴展名.ascx,它們的代碼隱藏文件是從System.Web.UI.UserControl類中繼承而來的?!纠?-4】網站8-4
第9章Ajax技術
本章目標Ajax簡介ASP.NETAJAX常用控件ASP.NETAJAX應用實例JQuery的Ajax技術Ajax簡介AJAX全稱為“AsynchronousJavaScriptandXML”(異步JavaScript和XML),是一種創(chuàng)建交互式網頁應用的網頁開發(fā)技術。Ajax應用程序的優(yōu)勢在于:能夠優(yōu)化數據傳輸,減少帶寬占用。Ajax引擎在客戶端運行,承擔了一部分本來由服務器承擔的工作,從而減少了大用戶量下的服務器負載。而且,AJAX能夠提供極為豐富的客戶端體驗。Google的Gmail和GoogleMaps就是AJAX應用的典型例子。ASP.NETAJAX簡介
(1)AJAXExtension其中包括了四個主要的Web控件:ScriptManager:所有的使用AJAX的頁面都必須放置一個ScriptManager控件ScriptManagerProxy:當母版頁上已有一個ScriptManager控件時,在子頁面中使用Timer:實現(xiàn)定時調用,常用于定時到服務器上去提取相關的信息UpdatePanel:最重要的AJAX控件,用于定義頁面更新區(qū)域和更新方式UpdateProgress:當頁面異步更新正在進行時提示用戶(2)AJAXControlToolKitAJAXControlToolKit建構于微軟AJAXExtension之上,基本涵蓋了Web頁面開發(fā)最需要使用的功能,使用方便。AJAXControlToolKit的全部控件集中于AjaxControlToolkit.dll文件中,可以通過在VisualStudio工具箱上選擇“選擇項”命令,將其中的控件放置到工具箱上。AJAXExtension安裝
從VS2008開始,AJAXExtension成為標準控件,不用安裝就可以支持了,如果是2005就需要安裝??蓮?en-us/download/confirmation.aspx?id=883下載ASPAJAXExtSetup.msi安裝包。安裝只需要一路next就行了,但要注意安裝前關閉VS.NET,因為安裝過程中需要對它做些配置。ASP.NETAJAX常用控件
ScriptManager控件UpdatePanel控件Timer控件ScriptManagerProxy控件
ScriptManager控件
所有需要支持ASP.NETAJAX的ASP.NET頁面上有且只能有一個ScriptManager控件,它用來處理頁面上的所有組件以及頁面局部更新,生成相關的客戶端代理腳本以便能夠在JavaScript中訪問WebService。UpdatePanel控件
UpdatePanel是ASP.NET2.0AJAXExtensions中很重要的一個控件,其強大之處在于不用編寫任何客戶端腳本就可以自動實現(xiàn)局部更新?!纠?-1】9-1.aspxTimer控件
ASP.NETAJAX中的Timer控件可以讓Web頁面在一定的時間間隔內局部刷新?!纠?-2】9-2.aspx
ScriptManagerProxy控件
在ASP.NETAJAX中,一個ASPX頁面上只能有一個ScriptManager控件,所以在Master的已有ScriptManager控件的情況下;在Content中使用ASP.NETAJAX,在Content中用ScriptManagerProxy,而不是ScriptManager。ASP.NETAJAX應用實例
ASP.NETAJAX實現(xiàn)登錄ASP.NETAJAX實現(xiàn)下拉框聯(lián)動ASP.NETAJAX實現(xiàn)信息即時刷新ASP.NETAJAX實現(xiàn)登錄
【例9-3】9-3.aspx
ASP.NETAJAX實現(xiàn)下拉框聯(lián)動
【例9-4】9-4.aspx
ASP.NETAJAX實現(xiàn)信息即時刷新
【例9-5】9-5.aspx
JQuery的Ajax技術jQuery是一個簡潔快速靈活的JavaScript框架,它能讓你在你的網頁上簡單的操作文檔、處理事件、實現(xiàn)特效并為Web頁面添加Ajax交互。JQuery可到下載。jQuery中提供了.get、.post、.ajax等多種Ajax方法,使Ajax變得及其簡單?!纠?-6】 9-6.aspx
第10章設計實例
本章目標
新聞發(fā)布系統(tǒng)網上書店系統(tǒng)新聞發(fā)布系統(tǒng)系統(tǒng)文件結構NewsDetail.aspxAddNews.aspxNewsList.aspxUpdateNews.aspxmanageNews.aspxDefault.aspx新聞表News系統(tǒng)的運行界面瀏覽新聞新聞列表管理新聞顯示新聞修改新聞添加新聞瀏覽新聞頁面
功能:從數據庫中讀取最近10條新聞,然后將新聞以列表的形式進行輸出顯示。單擊新聞標題,應能彈出顯示新聞窗口;該頁面應能鏈接到添加新聞、新聞列表、管理新聞頁面。主要邏輯:在Page_Load事件,從News表取出最近10條新聞,綁定到GridView中顯示。顯示新聞頁面
功能:顯示給定新聞的詳細信息主要邏輯:在Page_Load事件中,進行如下操作:從網頁URL中取得新聞編號從News表取得相應新聞的內容,并在DataList中綁定顯示更新新聞的點擊率,把News表相應新聞的click字段值加1添加新聞頁面
功能:上傳新聞,在數據庫中增加一條新聞信息主要邏輯:在單擊“確定”事件中,執(zhí)行如下操作:檢查用戶輸入是否合法,如標題、內容、作者等不能為空;標題不能太長保存上傳文件,要防止上傳文件與已有文件重名把用戶的輸入存入news表中新聞列表頁面
功能:用分頁的方式顯示所有新聞,允許設定條件查找;單擊新聞標題,應能彈出顯示新聞窗口。主要邏輯:這個頁面沒有采用GridView的內置分頁,而是采用自定義分頁,利用PagedDataSource類來設置要求顯示的頁次與每頁的行數,并綁定到GridView控件顯示出來。管理新聞頁面
功能:顯示新聞列表,要求能夠分頁,能方便的瀏覽;允許刪除;單擊新聞標題,應鏈
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子設備調試工崗前安全生產規(guī)范考核試卷含答案
- 竹藤編藝師班組協(xié)作能力考核試卷含答案
- 鐵水預處理工崗前測試驗證考核試卷含答案
- 塑料焊工安全技能測試模擬考核試卷含答案
- 雷管制造工班組管理水平考核試卷含答案
- 益蟲飼養(yǎng)工安全文明知識考核試卷含答案
- 2025年中成藥制藥生產線項目合作計劃書
- 2025年中子、電子及Γ輻照裝置合作協(xié)議書
- 中國品牌冰淇淋行業(yè)市場前景預測及投資價值評估分析報告
- 2025年銀釬料項目發(fā)展計劃
- 人民軍隊性質宗旨教育
- 護士長管理培訓課件
- 初三期末藏文試卷及答案
- 暫緩行政拘留申請書
- 小學班主任經驗交流課件
- TSG 21-2015《固定式壓力容器安全技術監(jiān)察規(guī)程》
- 2025個人年終工作總結
- 中國水利教育培訓手冊
- 變配電室工程施工質量控制流程及控制要點
- 小學數學元角分應用題200道及答案
- 主播合同糾紛答辯狀
評論
0/150
提交評論