網(wǎng)站設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書_第1頁
網(wǎng)站設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書_第2頁
網(wǎng)站設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書_第3頁
網(wǎng)站設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書_第4頁
網(wǎng)站設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、網(wǎng)站設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書馬江平遼寧工程技術(shù)大學(xué)營銷管理學(xué)院目 錄實(shí)驗(yàn)1 HTML網(wǎng)頁制作1實(shí)驗(yàn)2 VC#.NET基本程序設(shè)計(jì)4實(shí)驗(yàn)3 VC#.NET中類的設(shè)計(jì)7實(shí)驗(yàn)4 HTML控件和Web服務(wù)器控件的使用10實(shí)驗(yàn)5 驗(yàn)證控件的使用11實(shí)驗(yàn)6 訪客計(jì)數(shù)器12實(shí)驗(yàn)7 數(shù)據(jù)庫基本操作15實(shí)驗(yàn)8 使用DataSet對(duì)象訪問數(shù)據(jù)18實(shí)驗(yàn)9 用戶控件、自定義控件和Web服務(wù)的使用24實(shí)驗(yàn)10 ASP.NET安全機(jī)制26實(shí)驗(yàn)1 HTML網(wǎng)頁制作一、目的與要求1. 掌握HTML常用網(wǎng)頁標(biāo)記的使用。2. 掌握表格的建立方法。3. 掌握表單的建立方法。二、實(shí)驗(yàn)環(huán)境 任何一個(gè)文本編輯器、IE或者其它網(wǎng)頁瀏覽器三、內(nèi)容和步

2、驟 【實(shí)驗(yàn)題1】在網(wǎng)頁上創(chuàng)建一個(gè)課表。 步驟如下。 1. 打開記事本,輸入如下代碼,并以testl_1.html為文件名保存該文件:表格標(biāo)記應(yīng)用課表節(jié)次星期一星期二星期三星期四星期五1、2專業(yè)英語操作系統(tǒng)網(wǎng)絡(luò)基礎(chǔ)專業(yè)英語數(shù)據(jù)庫3、4Java數(shù)據(jù)庫實(shí)驗(yàn)Java操作系統(tǒng)5、6網(wǎng)絡(luò)基礎(chǔ)實(shí)驗(yàn)實(shí)驗(yàn)實(shí)驗(yàn)操作系統(tǒng) 2. 通過瀏覽器打開該文件,得到該程序的執(zhí)行結(jié)果,如圖l-1所示。圖1-l “課表”網(wǎng)頁運(yùn)行結(jié)果【實(shí)驗(yàn)題2】創(chuàng)建一個(gè)新用戶注冊(cè)的表單。步驟如下。1. 打開記事本或其它文本編輯工具,添加如下代碼,并以testl-2.html為文件名保存該文件;新用戶注冊(cè) 新用戶注冊(cè)姓 名:性 別:男女地 址:郵政編

3、碼:電 話:電子郵件:個(gè)人愛好:體育 音樂上網(wǎng) 旅游 返回2. 通過瀏覽器打開該文件,得到該程序的運(yùn)行結(jié)果,如圖1-2所示。圖1-2 “新用戶注冊(cè)”運(yùn)行結(jié)果四、思考與練習(xí)1. 網(wǎng)頁的基本語法格式是什么?包含了哪些內(nèi)容?2. 試使用HTML制作一個(gè)人主頁,將接受教育的情況用表格在網(wǎng)頁上列出來。實(shí)驗(yàn)2 VC#.NET基本程序設(shè)計(jì)一、目的與要求1. 掌握Visual C#NET語言的數(shù)據(jù)類型,熟悉定義各種數(shù)據(jù)類型的變量的方法。2. 熟練掌握if語句和SwitchCase語句。3. 熟練掌握visual C#.net中各種循環(huán)語句的使用。二、實(shí)驗(yàn)環(huán)境1. 計(jì)算機(jī)一臺(tái);2. Microsoft Visu

4、al Studio .NET 2005工具軟件;三、內(nèi)容和步驟 【實(shí)驗(yàn)題1】編程實(shí)現(xiàn)下述功能,并上機(jī)調(diào)試運(yùn)行程序。 給出一個(gè)百分制成績,要求輸出其對(duì)應(yīng)的成績等級(jí)A,B,C,D,E。其中:90分(包括90分)以上為A,8089分為B,7079分為C,6069分為D,60分以下為E。 步驟如下。 1. 在VSNET主選單中選擇:文件一新建一項(xiàng)目,在“模板”框中選擇“ASENETWeb應(yīng)用程序”選項(xiàng),然后在“名稱”文本框中輸入Web應(yīng)用程序的名稱,單擊“確定”按鈕。 2. 設(shè)計(jì)程序主頁面test2_1aspx界面,所包含的控件及屬性列于表1中。在界面上放置兩個(gè)Label控件,一個(gè)textbox控件和

5、一個(gè)Button控件。表1-1 test2_1.aspx文件包含的控件及其屬性控件類型名稱標(biāo)識(shí)屬性屬性值備注WEB控件LabelLabel1text請(qǐng)輸入成績WEB控件LabelLabel2text-顯示等級(jí)WEB控件TextBoxTxtName-輸入成績WEB控件ButtonButton1text等級(jí) 3. 雙擊“等級(jí)”按鈕,打開test2_1.aspx界面的代碼設(shè)計(jì)器窗口。在buttonl_click事件處理器的編輯區(qū)中輸入下列代碼:private void Button1_Click(object sender, System.EventArgs e) int score ; strin

6、g grade ; score=Convert.ToString(TextBox1.Text); If (score=90) grade=”A”; Else lf (score=80) grade=”B”; Else lf (score=70) grade=”C”; Else lf(score=60) grade=”D”; Else grade=”E”; Label2.Text=”該成績的等級(jí)為:”+grade; 【實(shí)驗(yàn)題2】編程實(shí)現(xiàn)下述功能,并上機(jī)調(diào)試運(yùn)行程序。 求1!+2!+3!+4!+5! 步驟如下:1. 在VS.NET中,新建一個(gè)Web應(yīng)用程序。2. 設(shè)計(jì)程序主頁面test2_2.as

7、px界面,如圖2-1所示。圖2-1 test2_2.aspx界面3. 雙擊“for”按鈕,打開test2_2.aspx界面的代碼設(shè)計(jì)器窗口。在buttonl_click事件處理器的編輯區(qū)中輸入下列代碼: private void Button1_Click(object sender, System.EventArgs e) int i,term,sum ; sum=0; term=1; For(i=1;i=5;i+) term=term*i; sum=sum+term; Labell.Text=”fornext的結(jié)果為:” Label2.Text=Convert.ToString (sum)

8、 4. 對(duì)While按鈕操作與上面的做法相同。在編輯區(qū)內(nèi)輸入代碼: private void Button2_Click(object sender, System.EventArgs e) int i,term,sum; i=l; sum=0; term=1; While(i=5) term=term*i; sum=sum+term; i=i+l; Labell.Text=”do whileend while的結(jié)果為:”; Label2.Text= Convert.ToString (sum); 5. 保存文件,按F5鍵調(diào)試運(yùn)行程序。在瀏覽器中單擊“for”、“while”按鈕,觀看運(yùn)行結(jié)果

9、。四、思考與練習(xí)1. 比較C#中選擇結(jié)構(gòu)的幾種格式的優(yōu)缺點(diǎn),并把實(shí)驗(yàn)一中的試題改有其它選擇結(jié)構(gòu)語句實(shí)現(xiàn)。2. 區(qū)分各種循環(huán)語句的使用方法。3. 輸入一行字符,分別統(tǒng)計(jì)出其中英文字母、空格、數(shù)字和其他字符的個(gè)數(shù)。實(shí)驗(yàn)3 VC#.NET中類的設(shè)計(jì)一、目的與要求1掌握類的定義和使用。2掌握類的定義和對(duì)象的聲明。3掌握具有不同訪問屬性的成員的訪問方式。4觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行過程。5. 定義一個(gè)類作為類的數(shù)據(jù)成員。二、實(shí)驗(yàn)環(huán)境 1. 計(jì)算機(jī)一臺(tái);2. Microsoft Visual Studio .NET 2005工具軟件;三、內(nèi)容和步驟【實(shí)驗(yàn)題1】完成下列的要求:1. 自定義一個(gè)類,名稱為M

10、yClass。2. 定義數(shù)據(jù)成員定義,定義一個(gè)常量成員,定義一個(gè)變量成員,定義一個(gè)靜態(tài)變量成員。3. 定義類的方法成員,定義一個(gè)類的方法,定義一個(gè)成員方法。4. 實(shí)現(xiàn)構(gòu)造函數(shù),和析構(gòu)函數(shù)。5. 在主函數(shù)中對(duì)以上成員進(jìn)行正確的訪問。步驟如下1.定義一個(gè)類名字為MyClass。實(shí)現(xiàn)要求的成員定義,可以參考如下代碼,適當(dāng)添加相應(yīng)的其他成員定義:using System;class MyClasspublic MyClass() Console.WriteLine(Instance constructor);public MyClass(int value) MyField = value;Conso

11、le.WriteLine(Instance constructor);MyClass() Console.WriteLine(Destructor);public const int MyConst = 12;public int MyField = 34;public void MyMethod()Console.WriteLine(MyClass.MyMethod);public int MyProperty get return MyField;set MyField = value;public int thisint index get return 0;set Console.Wr

12、iteLine(this0 = 1, index, value);public event EventHandler MyEvent;public static MyClass operator+(MyClass a, MyClass b) return new MyClass(a.MyField + b.MyField);internal class MyNestedClass2.創(chuàng)建一個(gè)包含主函數(shù)的類來訪問MyClass類 ,可以參考如下代碼:class Teststatic void Main() / Instance constructor usageMyClass a = new M

13、yClass();MyClass b = new MyClass(123);/ Constant usageConsole.WriteLine(MyConst = 0, MyClass.MyConst);/ Field usagea.MyField+;Console.WriteLine(a.MyField = 0, a.MyField);/ Method usagea.MyMethod();/ Property usagea.MyProperty+;Console.WriteLine(a.MyProperty = 0, a.MyProperty);/ Indexer usagea3 = a1

14、= a2;Console.WriteLine(a3 = 0, a3);/ Event usagea.MyEvent += new EventHandler(MyHandler);/ Overloaded operator usageMyClass c = a + b;static void MyHandler(object sender, EventArgs e) Console.WriteLine(Test.MyHandler);internal class MyNestedClass3.對(duì)以上代碼進(jìn)行添加修改,然后進(jìn)行調(diào)試,使其能夠正確運(yùn)行,得到相應(yīng)的正確結(jié)果。四、思考與練習(xí)1. 類中不同

15、訪問屬性的成員訪問方式是什么?2. 怎樣定義一個(gè)類?如何聲明一個(gè)對(duì)象?實(shí)驗(yàn)4 HTML控件和Web服務(wù)器控件的使用一、目的與要求1熟悉HTML服務(wù)器控件及其應(yīng)用。2. 掌握WEB服務(wù)器控件及其應(yīng)用。二、實(shí)驗(yàn)環(huán)境 (1) 計(jì)算機(jī)一臺(tái)。(2) Microsoft Visual Studio .NET 2005工具軟件。三、內(nèi)容和步驟 【實(shí)驗(yàn)題】自選 步驟如下。 1.創(chuàng)建一個(gè)ASP.NET的Web應(yīng)用項(xiàng)目。2.在窗體中用HTML控件進(jìn)行界面設(shè)計(jì)。(1)打開“視圖”“工具箱”選項(xiàng),從“工具箱”的“HTML”選項(xiàng)卡中選取各種不同的控件。(2)打開“視圖”“屬性”選項(xiàng),在“屬性”窗口中設(shè)置控件的相應(yīng)屬性。

16、(3)通過快捷菜單中的“作為服務(wù)器控件運(yùn)行”菜單項(xiàng)將HTML標(biāo)記轉(zhuǎn)換為HTML Server控件。(4)編寫代碼和事件過程。(5)保存文件,按F5執(zhí)行程序,查看執(zhí)行結(jié)果。3.在窗體中用Web Server控件進(jìn)行界面設(shè)計(jì)。(1)打開“視圖”“工具箱”選項(xiàng),從“工具箱”的“Web控件”選項(xiàng)卡中選取各種不同的控件。(2)打開“視圖”“屬性”選項(xiàng),在“屬性”窗口中設(shè)置控件的相應(yīng)屬性。(3)編寫代碼和事件過程。(4)保存文件,按F5執(zhí)行程序,查看執(zhí)行結(jié)果。四、思考與練習(xí)1.HTML Server控件與Web控件的區(qū)別是什么?實(shí)驗(yàn)5 驗(yàn)證控件的使用一、目的與要求掌握驗(yàn)證控件及其應(yīng)用;二、實(shí)驗(yàn)環(huán)境 (1)

17、 計(jì)算機(jī)一臺(tái);(2) Microsoft Visual Studio .NET 2005工具軟件;三、內(nèi)容和步驟 【實(shí)驗(yàn)題1】學(xué)習(xí)驗(yàn)證控件的使用方法,實(shí)驗(yàn)中我們使用了五個(gè)驗(yàn)證控件,其中有四個(gè)驗(yàn)證控件各對(duì)應(yīng)一個(gè)TextBox控件。在實(shí)驗(yàn)中根據(jù)不同的驗(yàn)證控件顯示出了不同的結(jié)果。 步驟如下。1. 在Web窗體上拖放五個(gè)TextBox控件、一個(gè)Button控件、五個(gè)label控件、一個(gè)RequireFieldValidator控件、一個(gè)CompareValidator控件、一個(gè)RangeValidator控件、一個(gè)RegularExpressionValidator控件、一個(gè)CustomValidat

18、or控件及一個(gè)ValidationSummary控件。2. 在TextBox控件中輸入相關(guān)信息。讓每個(gè)驗(yàn)證控件對(duì)應(yīng)一個(gè)TextBox控件(ValidationSummary除外)。3. 分別設(shè)置各個(gè)驗(yàn)證控件的ErrorMessage屬性的值。4. 保存并關(guān)閉文件,在瀏覽器中打開該Web頁面,并在該頁面的各個(gè)文本框中輸入數(shù)據(jù),顯示結(jié)果如圖5-1所示。圖5-1 程序運(yùn)行結(jié)果四、思考與練習(xí)1. 驗(yàn)證控件的作用是什么?實(shí)驗(yàn)6 訪客計(jì)數(shù)器一、目的與要求1熟練掌握Application及Session對(duì)象的使用。2利用.NET內(nèi)置對(duì)象實(shí)現(xiàn)顯示當(dāng)前網(wǎng)頁的訪客計(jì)數(shù)器。二、實(shí)驗(yàn)環(huán)境 1 計(jì)算機(jī)一臺(tái);2 Micr

19、osoft Visual Studio .NET 2005工具軟件;三、內(nèi)容和步驟【實(shí)驗(yàn)題1】使用Application對(duì)象統(tǒng)計(jì)網(wǎng)站的訪問次數(shù)步驟如下。1新建一個(gè)Web應(yīng)用項(xiàng)目。2創(chuàng)建程序主頁面窗體TEST6_1.ASPX,頁面上放置兩個(gè)Label WEB控件,控件標(biāo)識(shí)名分別為:Count、C_Time,Text屬性為空,Count用于顯示計(jì)數(shù)值,C_Time用于顯示訪問的當(dāng)前時(shí)間。3在TEST6_1.ASPX頁面的空白處雙擊,進(jìn)入程序編輯窗口,在Pagp_load事件中輸入以下程序代碼:using System;using System.Data;using System.Configura

20、tion;using System.Collections;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;public partial class text6_1 : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e

21、) Application.Lock(); ApplicationCounter= Convert.ToInt32(ApplicationCounter) + 1; Application.UnLock(); Count.Text = 您是第 + ApplicationCounter + 位訪客!; C_Time.Text=最近一次瀏覽時(shí)期時(shí)間:+ System.DateTime.Now; 4編譯、運(yùn)行程序,結(jié)果如圖6-1所示。連續(xù)單擊“刷新”按鈕,觀察網(wǎng)頁上訪客人數(shù)的變化。圖6-1程序運(yùn)行結(jié)果【實(shí)驗(yàn)題2】使用Session對(duì)象統(tǒng)計(jì)您訪問網(wǎng)站的次數(shù)步驟如下。1新建一個(gè)Web應(yīng)用項(xiàng)目。2創(chuàng)建程序

22、主頁面窗體TEST6_2.ASPX,頁面上放置兩個(gè)Label WEB控件,控件標(biāo)識(shí)名分別為:Count、C_Time,Text屬性為空,Count用于顯示計(jì)數(shù)值,C_Time用于顯示訪問的當(dāng)前時(shí)間。3在TEST6_1.ASPX頁面的空白處雙擊,進(jìn)入程序編輯窗口,在Pagp_load事件中輸入以下程序代碼:using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;u

23、sing System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;public partial class text6_1 : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (Session.IsNewSession) Sessioncounter = Convert.ToInt32(Sessioncounter) + 1; Label1.Text

24、= 您是第 + SessionCounter + 位訪客!; Label2.Text=最近一次瀏覽時(shí)期時(shí)間:+ System.DateTime.Now; 4編譯、運(yùn)行程序,結(jié)果如圖6-2所示。連續(xù)單擊“刷新”按鈕,觀察網(wǎng)頁上訪客人數(shù)的變化。圖6-2程序運(yùn)行結(jié)果四、思考與練習(xí)1Application和Session對(duì)象都可以用來記錄客戶的信息,它們有什么區(qū)別?2將計(jì)數(shù)器的值寫入文本文件,從文件中讀寫計(jì)數(shù)器的值,改寫上面的應(yīng)用程序。實(shí)驗(yàn)7 數(shù)據(jù)庫基本操作一、目的與要求1熟悉基本的數(shù)據(jù)庫應(yīng)用程序設(shè)計(jì)的流程;2熟悉如何利用ADO.NET來處理數(shù)據(jù)庫類型的應(yīng)用;二、實(shí)驗(yàn)環(huán)境 Visual Studio

25、2005或者Visual Web Developer Express EditionMicrosoft SQL 2005 Express Edition三、內(nèi)容和步驟 【實(shí)驗(yàn)題】實(shí)現(xiàn)用戶登錄或新用戶注冊(cè)的功能 步驟如下。1在SQL SERVER 2005中創(chuàng)建一個(gè)use數(shù)據(jù)庫,并在這個(gè)數(shù)據(jù)庫中建立一個(gè)表member,member表包含二個(gè)字段,分別是name(PK,NVARCHAR(50), NOT NULL);password(NVARCHAR(20), NOT NULL) ;emil(NVARCHAR(50), NULL)。2新建一個(gè)Web應(yīng)用項(xiàng)目。3創(chuàng)建用戶登錄或新用戶注冊(cè)的程序主頁面窗

26、體Tetst7_1.ASPX,頁面界面如圖7-1所示。頁面上有三個(gè)Label、二個(gè)TextBox、三個(gè)Button共八個(gè)WEB控件。3進(jìn)入程序編輯窗口,在三個(gè)按鈕對(duì)應(yīng)的事件中輸入以下程序代碼:private void Button1_Click(object sender, System.EventArgs e)/實(shí)現(xiàn)用戶登錄功能string User=this.TextBoxUser.Text.Trim();string Pwd=this.TextBoxPwd.Text.Trim();string strConn = server=localhostSqlExpress;database=u

27、se;uid=sa;pwd=;SqlConnection con=new System.Data.SqlClient.SqlConnection();SqlCommand myCommand = new SqlCommand(select * from member where user=+User+ and password=+Pwd+, con);Con.open();Int count= myCommand.ExecuteScalar();if(count=1)this.Label3.Text=恭喜,您已經(jīng)成功登錄!;elsethis.Label3.Text= alert(登錄信息有誤!

28、);con.colse();private void Button2_Click(object sender, System.EventArgs e)/實(shí)現(xiàn)重置功能this.TextBoxUser.Text=;this.TextBoxPwd.Text=;private void Button3_Click(object sender, System.EventArgs e)/實(shí)現(xiàn)用戶注冊(cè)功能Response.Redirect(test7_2.aspx);4如果是新用戶,單擊注冊(cè),進(jìn)入test7_2.aspx頁面,頁面界面如圖7-2所示。圖7-2 新用戶注冊(cè)5進(jìn)入程序編輯窗口,對(duì)應(yīng)按鈕的事件中輸

29、入以下程序代碼:protected void Button1_Click(object sender, System.EventArgs e)/實(shí)現(xiàn)用戶注冊(cè)的確認(rèn)功能if(this.TextBoxUser.Text=)this.LabelMessage.Text= alert(您必須輸入用戶名!);else string User=this.TextBoxUser.Text;string strConn = server=localhostSqlExpress;database=use;uid=sa;pwd=;SqlConnection con=new System.Data.SqlClien

30、t.SqlConnection();SqlCommand myCommand = new SqlCommand(select * from member where user=+User+, con);Con.open();Int count= myCommand.ExecuteScalar();if(count!=0)this.LabelMessage.Text= alert(您輸入的用戶名已存在,請(qǐng)重新設(shè)置!);else if(this.TextBoxPwd.Text!=this.TextBoxRpwd.Text)this.LabelMessage.Text= alert(二次輸入的密碼不

31、一致,請(qǐng)確認(rèn)后重試!); elsethis.LabelMessage.Text=;try/設(shè)置命令參數(shù)(參數(shù)名、類型、長度、所示列名)this.myCommand.Parameters.Add(user,System.Data.SqlDbType.NChar,10,user);this.myCommand.Parameters.Add(Email,System.Data.SqlDbType.NChar,20,Email);this.myCommand.Parameters.Add(pwd,System.Data.SqlDbType.NChar,20,密碼); this.myCommand.Pa

32、rameters.Add(Email,System.Data.SqlDbType.NChar,20,Email);this.myCommand.ParametersEmail.Value=this.TextBoxEmail.Text;this.myCommand.Parameterspwd.Value=this.TextBoxPwd.Text;this.myCommand.CommandText=insert into memberInfo(user,passwor,Email) values(user, pwd, Email);/無返回值的數(shù)據(jù)查詢進(jìn)行記錄更新this.myConnectio

33、n.Open();this.myCommand.ExecuteNonQuery();this.myConnection.Close();this.LabelMessage.Text=您已經(jīng)注冊(cè)成功了!;catch(Exception Exc)this.LabelMessage.Text=Exc.Message;this.myConnection.Close();protected void Button2_Click(object sender, System.EventArgs e)/實(shí)現(xiàn)注冊(cè)的重置功能this.TextBoxUser.Text=;this.TextBoxPwd.Text=;

34、this.TextBoxRpwd.Text=; this.TextBoxEmail.Text=;this.LabelMessage.Text=請(qǐng)?zhí)顚懽?cè)內(nèi)容!;6編譯、運(yùn)行程序,觀察結(jié)果。四、思考與練習(xí)1如何實(shí)現(xiàn)與數(shù)據(jù)庫的連接? 實(shí)驗(yàn)8 使用DataSet對(duì)象訪問數(shù)據(jù)一、目的與要求1. 掌握DataAdapteter對(duì)象的創(chuàng)建和配置方法。2. 掌握通過DataAdapter對(duì)象創(chuàng)建DataSet對(duì)象的方法。3. 掌握將DataSet對(duì)象綁定到DataGrid控件進(jìn)行數(shù)據(jù)顯示的方法。二、實(shí)驗(yàn)環(huán)境1. 計(jì)算機(jī)一臺(tái);2. Microsoft Visual Studio .NET 2005工具軟件;三

35、、內(nèi)容與步驟 【實(shí)驗(yàn)題1】本實(shí)驗(yàn)要求完成以下任務(wù)。 利用DataAdapteter對(duì)象和DataSet對(duì)象的方法。使用DataGrid控件進(jìn)行數(shù)據(jù)顯示。并實(shí)現(xiàn) 分頁、編輯、刪除、排序、選中行等。注意,使用數(shù)據(jù)庫微軟的FPNWIND數(shù)據(jù)庫,可導(dǎo)入到SQL Server 數(shù)據(jù)庫。創(chuàng)建步驟:1頁面的創(chuàng)建在頁面中加入 DadaGrid 控件 使用屬性生成器做一些設(shè)置,實(shí)現(xiàn)分頁、排序、編輯、刪除等功能2數(shù)據(jù)庫的連接(連接 FPNWIND.MDB 庫,先導(dǎo)入到SQL Server中)現(xiàn)在SQL Server中建立數(shù)據(jù)庫FPNWIND,然后把FPNWIND.MDB數(shù)據(jù)庫中的所有數(shù)據(jù)都倒入其中。使用連接類DB

36、.CS來集中連接數(shù)據(jù)庫,連接的代碼方法如下:public static SqlConnection createCon() return new SqlConnection(Server=.;DataBase=FPNWIND;uid=sa;pwd=;); 在每個(gè)頁面中連接數(shù)據(jù)庫時(shí),加入下列代碼即可。 SqlConnection conn=DB.createCon(); /對(duì)應(yīng)上面類中的方法3先實(shí)現(xiàn)在DataGrid中的簡單顯示涉及的代碼有:public DataSet ds=new DataSet();/建立數(shù)據(jù)集對(duì)象private void Page_Load(object sender,

37、System.EventArgs e)/ 在此處放置用戶代碼以初始化頁面if(!this.IsPostBack)BindGrid();private void BindGrid() /數(shù)據(jù)綁定方法SqlConnection con=DB.createCon();SqlDataAdapter sda=new SqlDataAdapter(select * from 供應(yīng)商,con);sda.Fill(ds,emp); /裝填數(shù)據(jù)集DataSet/和更新按鈕有關(guān),需要設(shè)置主鍵*this.DG1.DataKeyField=供應(yīng)商ID;/索引關(guān)鍵字/*this.DG1.DataSource=ds.Ta

38、blesemp.DefaultView;this.DG1.DataBind();4再實(shí)現(xiàn)在DataGrid中的分頁右鍵點(diǎn)擊 DataGrid 利用“屬性生成器”設(shè)置分頁。private void DG1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e) /分頁 this.DG1.CurrentPageIndex=e.NewPageIndex; BindGrid();5實(shí)現(xiàn)編輯和刪除右鍵點(diǎn)擊 DataGrid 利用“屬性生成器列按鈕列”,添加:“編輯”和“刪除”按鈕,

39、這時(shí)也需要添加“綁定列”便于確定列號(hào)。利用“屬性”,選事件按鈕(圖標(biāo)為閃電標(biāo)志),選取“editCommand”事件,雙擊后,如下添加代碼:private void DG1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)this.DG1.EditItemIndex=e.Item.ItemIndex; BindGrid(); 可以編輯了,但還需要添加“更新”和“取消”按鈕的代碼。private void DG1_UpdateCommand(object source, System.

40、Web.UI.WebControls.DataGridCommandEventArgs e)string empID=this.DG1.DataKeyse.Item.ItemIndex.ToString();string companyname = (TextBox)e.Item.Cells1.Controls0).Text;string 聯(lián)系人姓名 = (TextBox)e.Item.Cells2.Controls0).Text;SqlConnection con=DB.createCon();SqlCommand cmd=new SqlCommand(update 供應(yīng)商 set 公司名稱

41、= +companyname+, 聯(lián)系人姓名=+聯(lián)系人姓名+ where 供應(yīng)商ID=+empID+,con);con.Open();cmd.ExecuteNonQuery();con.Close();this.DG1.EditItemIndex=-1;this.BindGrid();private void DG1_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)this.DG1.EditItemIndex=-1;this.BindGrid();刪除按鈕的源代碼:private

42、 void DG1_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)string SupID=this.DG1.DataKeyse.Item.ItemIndex.ToString();SqlConnection con=DB.createCon();SqlCommand cmd=new SqlCommand(delete 供應(yīng)商 where 供應(yīng)商ID=+SupID+,con);con.Open();cmd.ExecuteNonQuery();con.Close();this.D

43、G1.EditItemIndex=-1;this.BindGrid();6實(shí)現(xiàn)排序右鍵點(diǎn)擊 DataGrid 利用“屬性生成器常規(guī)允許排序”,再利用“屬性生成器列數(shù)據(jù)綁定列排序表達(dá)式”設(shè)置排序表達(dá)式。設(shè)置表達(dá)式后,在相應(yīng)標(biāo)題欄出現(xiàn)下劃線。 然后,利用“屬性”,選事件按鈕(圖標(biāo)為閃電標(biāo)志),選取“SortCommand”事件,雙擊后,如下添加代碼:private void DG1_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)/排序/ViewStateOrder = ASC;

44、 /按遞增排序,遞減為:DSC 上行代碼要放在此事件以外,可放在page_load事件中/雙向排序:如果原來是降序則改為升序,反之亦然if(string)ViewStateOrder = DESC)ViewStateOrder = ASC;elseViewStateOrder = DESC;SqlConnection con=DB.createCon(); /連接 FPNWIND 庫SqlDataAdapter sda=new SqlDataAdapter(select * from 供應(yīng)商,con);/DataSet對(duì)象 ds 已經(jīng)在前面定義);sda.Fill(ds,emp);/設(shè)定默認(rèn)視

45、圖DefaultView來排序ds.Tablesemp.DefaultView.Sort=e.SortExpression+ +ViewStateOrder.ToString();this.DG1.DataSource=ds.Tablesemp.DefaultView;this.DG1.DataBind(); 7增加“超級(jí)鏈接列”設(shè)置超級(jí)鏈接。右鍵點(diǎn)擊 DataGrid 利用“屬性生成器列超級(jí)鏈接列”在表中設(shè)置超級(jí)鏈接。需要填寫相關(guān)的“文本字段”和“URL字段”及“URL格式字符串”如:分別設(shè)為:“供應(yīng)商ID“和“供應(yīng)商ID”及“showDetails.aspx? empID=0”, showDetails.aspx為另一頁面。在此頁面中編寫如下代碼。以接收傳遞過來的信息。private void Page_Load(object sen

溫馨提示

  • 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)論