Bai giang Khoa ASP.NET - Khoa 2009-color

Post on 24-Nov-2014

20 views 0 download

Transcript of Bai giang Khoa ASP.NET - Khoa 2009-color

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin

MC LCI. L thuyt.............................................................................................................51.1 Gii thiu.......................................................................................................................5 1.2 Danh sch cc phn t HTML thng dng..................................................................5

II. Bi tp thc hnh..............................................................................................71. Yu cu:...........................................................................................................................7 2. Hng dn........................................................................................................................8 3. Minh ho mu..................................................................................................................8 4. Ghi ch.............................................................................................................................9

BI S 2: To trang web ng vi DHTML v JavaScript...............................................10 I. L thuyt...........................................................................................................101. a cu lnh javascript vo trang web..........................................................................10 2. a cu lnh javascript vo t mt file ring bit.........................................................11 3. Truy cp cc phn t HTML bng cu lnh Javascript.................................................12 4. Xy dng hm trong Javascript......................................................................................13 5. Mt s hm thng dng ca Javascript..........................................................................14

II. Thc hnh........................................................................................................141. Yu cu..........................................................................................................................14 2. Hng dn......................................................................................................................14 3. Minh ho mu................................................................................................................14 4. Ghi ch...........................................................................................................................17

BI 3: THAY I NI DUNG TRANG WEB BNG CSS V JS NH DNG TRANG WEB VI CSS..............................................................17 I. L thuyt...........................................................................................................171. nh dng CSS ngay trong nh ngha phn t (Gi l Inline)......................................18 2. nh dng CSS thng qua lp........................................................................................18

II. Thc hnh........................................................................................................201. Yu cu..........................................................................................................................20 2. Hng dn......................................................................................................................20 3. Minh ho mu................................................................................................................21 4. Ghi ch...........................................................................................................................24

BI 4 (Tip): THAY I NI DUNG TRANG WEB BNG CSS V JS NH DNG TRANG WEB VI CSS..............................................................25 I. L thuyt...........................................................................................................251. Tham chiu n mt phn t trong trang web...............................................................25 2. Tham chiu n mt thuc tnh ca phn t..................................................................26 3. Thay i ni dung ca mt phn t...............................................................................26

II. Thc hnh........................................................................................................271 Yu cu...........................................................................................................................27 2 Hng dn.......................................................................................................................28 V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.1

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin 3 Minh Ho mu................................................................................................................28 4 Ghi ch............................................................................................................................33

BI S 5: ASP.NET v Web form.....................................................................33 I. L thuyt...........................................................................................................331. M hnh lp trnh pha my ch.....................................................................................33 2 C ch x l file ASP.NET pha my ch......................................................................36 3 Mt s v d minh ha....................................................................................................39 4 Webform trong ASP.NET...............................................................................................42 5 Tm hiu cu trc trang ASP.NET..................................................................................42 6. Code behind v vit code pha Server............................................................................46 7. HTML Server Controls v Web controls.......................................................................47

II. Thc hnh........................................................................................................481. Yu cu..........................................................................................................................48 2. Hng dn......................................................................................................................49 3. Minh ho mu................................................................................................................49 4. Ghi ch...........................................................................................................................54

BI 6: Cc i tng trong ASP.NET...............................................................55 I. L thuyt...........................................................................................................551. Request Object...............................................................................................................55 2 Response Object..............................................................................................................58 3 Server Object...................................................................................................................60 4 Session Object.................................................................................................................61 5 Application Object..........................................................................................................61

II. Thc hnh........................................................................................................621. Bi 1: To mt trang Login............................................................................................62 2. Bi 2: To mt trang m s lng ngi truy cp. .....................................................67

BI 7: CNG NGH ADO.NET........................................................................69 I. L thuyt...........................................................................................................691. Gii thiu chung ............................................................................................................69 2. Kin trc ca ADO.NET................................................................................................70 3. Cc lp thao tc vi CSDL: Connection, Command,................................................71

II. THC HNH..................................................................................................841. To c s d liu ...........................................................................................................84 2. Nhp d liu cho bng. .................................................................................................85 3. Hin th d liu trong bng ln trnh duyt....................................................................88 4. Cp nht d liu bng DataSet v DataAdapter.............................................................89

BI 8: Tm hiu v ng dng c ch Data Binding...........................................91 I. L thuyt...........................................................................................................911 Gii thiu DataBinding...................................................................................................91 2 Data Binding...................................................................................................................91 3. Cc iu khin Data Source (Data source controls).......................................................95

II. THC HNH................................................................................................104 BI 9: Lm vic vi GridView..........................................................................108V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319 P.2

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin

I. L thuyt.........................................................................................................1081. Gii thiu tng quan.....................................................................................................108 2. Tm hiu lp GridView ...............................................................................................108 3. Cc tnh nng h tr ca GridView.............................................................................112 4. To cc ct ty bin HyperLink, BoundColunm.....................................................116 5. To v x l cc ct Select, Edit, Delete, Update....................................................120

II. Thc hnh......................................................................................................124 BI 10: S dng Templates..............................................................................131 I. L thuyt.........................................................................................................1311. Gii thiu tng quan.....................................................................................................131 2. Cc iu khin h tr Templates.................................................................................131 3. Repeater control, DataList control, GridView control.................................................132

II. THC HNH................................................................................................1391. Bi 1: Hin th danh sch cn b .................................................................................139 2. Bi 2: B sung thm trng vo bng..........................................................................141 3 Bi 3: Hin th danh sch cn b dng chi tit. ............................................................142 4. Bi 4: Hin th danh sch ngi dng di dng Flow (tuyn tnh) ...........................143 Bi 5: Hin th thng tin km Hyperlink..........................................................................147 Bi 6: Thc hin phn trang.............................................................................................148

PH LC...........................................................................................................150 I. NG GI WEBSITE..................................................................................150 II. CI T H THNG IIS H TR ASP.NET WEBSITE......................1501. Ci t IIS....................................................................................................................150 2. Ci t .NET Framework.............................................................................................150

V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.3

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin

TRUNG TM HNG YN APTECHa ch in thoi E-mail Website : : : : Tng 2, Nh A i hc SPKT Hng Yn 0321-713.319; Fax: 0321-713.015 aptech@utehy.edu.vn; http://www.aptech.utehy.vn

TI LIU KHA HC LP TRNH ASP.NETBin son: - Nguyn Minh Qu - L Quang Li

HNG YN 7/2009V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.4

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin

PHN I C bn v HTML, DHTML, JavaScriptBI S 1: To trang web vi HTMLMc tiu: Kt thc bi hc, sinh vin c th To c trang web tnh trn notepad/ HTML Editor nh dng ni dung trang web bng cc phn t HTML c bn Thao tc c vi phn t bng (Table), , ,....

Ni dung

I. L thuyt1.1 Gii thiuMt trang web khi c hin th trn trnh duyt (IE; FireFox; Netscape,...) v bn cht c to t cc cp th (tag) c bit. Cc th ny s ch dn cho trnh duyt bit nn hin th ni dung nh th no. V d cp th ... s ch dn cho trnh duyt phi in m ni dung bn trong, v.v... Mi cp th nh vy gi l cp th HTML (Hyper Text Markup Language). V vy, i vi mi lp trnh vin web, trc khi mun xy dng ng dng web thc th th khng ch phi hiu rt r nhng cp th HTML (t nht l nhng cp th c bn) m cn phi bit cch Code (to) cc cp th ny.

1.2 Danh sch cc phn t HTML thng dngDi y l danh sch cc phn t HTML c bn v cch to ra tng ng bng cp th HTMLSTT Phn t Input Button CheckBox Radio button Hnh th hin th trn trang web Cch to ra bng th HTML tng ng Yes CheckBox1 Nam Nguyn Vn A Nguyn Vn B Nguyn Vn C Nguyn Vn A Nguyn Vn B Nguyn Vn C

List Danh sch (Combo Box)

Nguyn Vn A

V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.5

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Phn cch xung dng L mt phn t cha cc phn t khc. Khi n/ hin/ di chuyn... phn t div th cc phn t khc cng n/hin/di chuyn theo...
11 12 21 22 Th TR phi nm trong mt no , khng th to ring

div

Table

11 21

12 22

TR

TD

Th TD phi nm trong mt no , khng th to ring. ....

Trn hai ct

=>

.... 1 2 3 1 23 1 2 www.aptech.utehy.vn

Trn 2 hng

=>

a img

www.aptech.utehy.vn

Ch : Thuc tnh t cho cc phn t c vit di dng: =. Phn c t trong cp du nhy n hoc cp du nhy kp.

V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.6

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin

II. Bi tp thc hnh1. Yu cu:To mt trang web hin th ni dung nh sau:

Giao din trang web cn to

V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.7

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin

2. Hng dnS dng bng m t cc phn t trn to trang theo yu cu. Vo trnh son tho web ca Visual Studio 2008 v to d n web, sau m trang Default.aspx v vit cc th HTML. chy (m) trang web va to, c th nhn F5 hoc click chut phi trong trang son tho (hoc tp Default.aspx bn panel phi), sau ch "View in Browser".

3. Minh ho muDefault.aspx Bi thc hnh s 1 - Hng Yn Aptech
PHN MM QUN L BN HNG NHP THNG TIN NH CUNG CP Tn nh cung cp:
Ngi i din: Chc v:
a ch Nh CC:
Thnh ph : ----Chn---- H ni TP H Ch Minh Nng Hi Phng Hng Yn Hi Dng Qung Ninh Ni khc Vng:
M bu in:
Quc gia: Vit Nam Lo Campuchia Ni khc

V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.8

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tinin thoi: S Fax:
a ch website:
Danh sch nh cung cp hin c M NCC Tn NCC a ch Homepage 1 Cng ty FPT Lng H - Ba nh www.fpt.vn 2 Cng ty CMC Hn Thuyn - Hai B Trng www.cmc.vn 3 Cng ty Trn Anh Ging v - Ba nh www.trananh.vn

4. Ghi ch

thc hin xo (reset v trng thi u) ca mt form nhp liu, ta to phn t button nhng t "type" l "reset" (thay v type = "button). gi ton b ni dung d liu nhp v server x l, to phn t button nhng t "type" l "submit" (thay v type = "button") chn mc nh mt mc trong danh sch (Select) th c thuc tnh l "Selected" cho mc . to hp text c nhiu dng, ta dng th . Mun thay i rng ca textbox, ch cn thay i thuc tnh "size". C th b tr li trang web trn cho p hn bng cch t cc phn t trong cc ca bng (s dng th Table).P.9

V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin

BI S 2: To trang web ng vi DHTML v JavaScriptMc tiu: Kt thc bi thc ny, ngi hc c th Truy xut cc i tng trnh duyt v cc phn t HTML bng JavaScript. To trang web ng k c x l tnh hp l ca d liu nhp vo. Ni dung:

I. L thuytMt trang web c to bi trc c gi l mt trang web tnh (Static webpage - tc l: Ni dung ca n mt khi c to ra th lun lun hin th ging nhau i vi mi ngi dng mi thi im). Tuy nhin, ngy nay do nhu cu ca ngi dng v ca ng dng nn mt trang web phi c kh nng ng (Dynamic webpage - tc l: ni dung ca trang web c th hin th, ng x khc nhau ng vi ngi s dng hoc tnh hung khc nhau...). Kh nng "ng" c th thc hin bn pha trnh duyt hoc pha server. Nu trang web cho php thc hin thay i (bng ngn ng kch bn nh VBScript, JavaScript...) bn pha trnh duyt, gi l trang DHTML (Dynamic HTML); cn nu trang web thc hin x l bn pha server (bng ngn ng C#, VB.NET, ASP, PHP, Perl,...) gi l cc trang ng pha server (Active Server Page). Trong ti liu ny chng ta s tm hiu c hai dng web ng trn, cn trong bi ny ta s tm hiu trang DHTML vi Javascript (JS).

1. a cu lnh javascript vo trang web1.1 a cu lnh javascript vo lung x l ngay khi trang web c m. a cc cu lnh Javascript vo trang web v yu cu trnh duyt thc thi ngay khi trang web c m, ta ch cn t cc cu lnh JS ngay trong cc cp th ..... nhng khng hm. V d: Hin th mt li cho v thng bo ngy hin ti khi trang web c m. var d = new Date (); document.write ("Cho bn ! "); document.write("Hm nay l: " + d.toDateString()); ** Ch : C th c nhiu on script trong mt trang. Trong cp script phi l cc CU LNH JAVASCRIPT V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319 P.10

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Nhng cu lnh JS nu khng nm trong cc hm th s c thc hin ngay khi trang web c m. 1.2 a cu lnh javascript vo cc s kin (event) Nh phn 1.1 th cc cu lnh JS s c thc thi ngay khi trang web c m, tuy nhin c nhng lc ta mun n ch c thc hin khi mt s kin no xy ra, nh click chut, nhn phm ...Trong trng hp ny n gin l ta a cu lnh vo s kin tng ng theo c php: ... = "Danh sch cu lnh JS c cch nhau bi du chm phy".... V d: Hin th li cho v thng bo ngy hin ti khi ngi dng nhn vo nt "Hello": *** Thc t, rt t khi ngi ta a qu nhiu cu lnh vo ngay bn trong s kin nh trn, m thng a cc cu lnh ny vo mt hm, sau vit cu lnh gi hm trong s kin.

2. a cu lnh javascript vo t mt file ring bit.Trong cc ng dng ln, s hm, cu lnh JS cng s rt ln, v vy nu cc hm ny ngay trong file HTML nh trn s kh bo tr v khin cho vic chia s gp kh khn. khc phc hn ch ny, ngi ta thng t cc hm JS trong mt tp ring, sau ch vic gi cc hm ny trong trang HTML. V d: To mt file cha cc hm JS Cng v tr trong mt file c tn l MyMath.js, sau gi cc hm ny trong trang web c tn l TestJS.htm. Vic "nhng" cc trang *.JS vo trang html thng qua thuc tnh "src".

File MyMath.js//Hm cng hai s nguyn function Cong(a,b) { return a+b; } //Hm tr hai s nguyn function Tru(a,b) { return a-b; } V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.11

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin

File TestJS.htm Lession 02 alert ("1+1 = " + Cong(1,1)); alert ("10-2 = " + Tru (10,2));

3. Truy cp cc phn t HTML bng cu lnh JavascriptTrong JS, c th truy xut (c/ ghi) cc bin hoc cc phn t trn trang web (nh button, textbox, select, checkbox, radio button,... hoc phn t bt k). Vic truy xut n phn t tun theo c php chung nh sau: + Document.., hoc: + Document.forms[Ch s]., hoc: + Document.getElementById(). Khi truy xut n phn t, ta c th truy xut n cc thuc tnh ca n c/ ghi nh sau: .. Lession 02 function ThucHien() { var a = parseFloat(document.form1.txtSH1.value); var b = parseFloat(document.form1.txtSH2.value); document.form1.txtTong.value = a+b; } Chng trnh tnh tng V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.12

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin S hng 1:
S hng 2:
Tng:
*** Theo v d trn, truy xut (tham chiu) n phn t txtSH1 v txtSH2 ta vit: document.form1.txtSH1 v document.form1.txtSH2. Cn truy xut n thuc tnh value (cha ni dung ca textbox), ta ch cn thm thuc tnh Value vo sau tham chiu, c th vit: document.form1.txtSH1.value Ngoi ra c th vit theo cch khc nh sau: ..................... function ThucHien() { var a = parseFloat(document.forms[0].txtSH1.value); var b = parseFloat(document.forms[0].txtSH2.value); document.getElementById("txtTong").value = a+b; } ............................ bit danh sch cc thuc tnh ca phn t tng ng, c th tra cu trn Internet (v d trng www.w3schools.com) hoc search: "Javascript reference"

4. Xy dng hm trong JavascriptTrong Javascript, c th xy dng cc hm ging nh cc ngn ng lp trnh khc. Tuy nhin c mt s s khc bit, c th: - Hm khng c kiu tr v - Danh sch tham s khng c kiu V d: Vit mt hm tnh lu tha ca mt s xy Lession 02 function LuyThua(x, y) { var KQ = Math.pow (x,y); return KQ; } function ThucHien() { var x,y; x=document.getElementById("txtX").value ; y=document.getElementById("txtY").value ; document.getElementById("txtXMuY").value = LuyThua (x,y); }

V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.13

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Chng trnh tnh lu tha C s:
S m:
Kt qu (XY):

5. Mt s hm thng dng ca Javascript- Hm write(): in kt qu ra trang web. - Hm alert(): Thng bo trong mt hp thoi ring. - Hm prompt(): yu cu nhp thng tin t ngi dng. - Hm confirm(): Yu cu ngi dng xc nhn. - Hm open(): m mt trang web. - Hm x l ton hc: nh Sin, cos, abs, pow, .... nm trong i tng Math. - Hm x l xu: SubStr, Length, toLower.... c sn i vi mi xu. - Hm chuyn xu sang s nguyn, thc: pareInt(); pareFloat(). - Hm tnh gi tr ca mt biu thc: eval().

II. Thc hnh1. Yu cuSp xp li trang web trong bi thc hnh 1 di dng bng sau vit th tc x l s kin click ca nt submit , theo yu cu sau y: Nu d liu hp l th thc hin submit Nu d liu nhp vo khng hp l th thng bo cho ngi dng v khng thc hin submit. D liu nhp vo c gi l khng hp l nu gp mt trong cc trng hp sau: Tn nh cung cp trng Thnh ph khng c chn in thoi cha k t khng phi l s a ch website khng ng.

2. Hng dn2.1 hu mt s kin ca mt phn t bt k, ch cn thm cu lnh "return false;" trong phn cu lnh x l s kin tng ng. 2.2 S dng cc hm kim tra s IsNaN() (true = khng phi l s, false=ng l s) 2.3 S dng cc hm x l xu. 2.4 Vit di dng cc hm.

3. Minh ho muFile Default.aspx

Bi thc hnh s 2 - Hng Yn Aptech V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.14

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin function KiemTraDuLieu() { if (document.getElementById("txtNCC").value == "") { alert ("Bn phi nhp tn nh cung cp !"); return false ; } if (document.getElementById("lstCity").selectedIndex == 0)| { alert ("Bn cha chn Thnh ph !"); return false ; } if (isNaN(document.getElementById("txtTelephone").value) == true ) { alert ("S T ch cha k t s !"+document.getElementById("txtTelephone").value); return false; } var homepage=document.getElementById("txtHomepage").value.toLowerCase() if (homepage.indexOf("http://")==-1) { alert ("a ch website khng ng, hy nhp theo dng http://"); return false; } return true; //d liu nhp hp l. }
PHN MM QUN L BN HNG NHP THNG TIN NH CUNG CP Tn nh cung cp: Ngi i din: Chc v: a ch Nh CC: Thnh ph : ----Chn----

V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.15

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinH ni TP H Ch Minh Nng Hi Phng Hng Yn Hi Dng Qung Ninh Ni khc Vng: M bu in: Quc gia: Vit Nam Lo Campuchia Ni khc in thoi: S Fax: a ch website:
Danh sch nh cung cp hin c M NCC Tn NCC a ch Homepage 1

V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319

P.16

Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinCng ty FPT Lng H - Ba nh www.fpt.vn 2 Cng ty CMC Hn Thuyn - Hai B Trng www.cmc.vn 3 Cng ty Trn Anh Ging v - Ba nh www.trananh.vn

4. Ghi chC th tra cu cc thuc tnh, phng thc, s kin ca cc phn t (Select, command, checkbox,...) ti: www.w3schools.com http://developer.netscape.com/docs/manuals/js /client/jsguide/index.htm http://developer.netscape.com/docs/manuals/ja vascript.html hoc bn mm i km kha hc.

BI 3: THAY I NI DUNG TRANG WEB BNG CSS V JS NH DNG TRANG WEB VI CSSMc tiu sau khi kt thc bi hc Trnh by c cch nh ngha CSS kiu dng v lp. S dng CSS v bng thuc tnh CSS nh dng cho phn t bt k. nh dng li trang thng tin sn phm bng CSS, m bo tnh m thut v k thut.

I. L thuytTrc y, ngi ta thng dng cc c php c nh dng cc phn t trn trang web (v d in m, t font ch, v.v...). Tuy nhin cch t trc y c nhiu im hn ch v vy hin nay trong lp trnh ch yu s dng c php nh dng mi gi l CSS (Cascading Style Sheet = bng nh kiu). C nhiu cch nh kiu cho phn t web bng CSS, tuy nhin thc t hay s dng cch nh dng sau y: V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.17Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin1. nh dng CSS ngay trong nh ngha phn t (Gi l Inline)Vi cch ny, khi mun nh dng cho mt phn t/ th bt k no ngi ta nh ngha CSS ngay trong phn t/ th . V d1: nh ngha ni dung th H2 c mu ch , font ch nghing nh sau: Mu , ch nghing V d2: nh ngha nt nhn "Yes" c nn , c ch 16pt nh sau: Ch : Ni dung trong style cha cc cp : v cch nhau bi du hai chm. Danh sch cc thuc tnh v gi tr cng nh ngha ca mi thuc tnh c th tra trong bng (bn mm km kho hc) hoc vo tm kim trn internet: http://www.w3schools.com/CSS/CSS_reference.asp hoc trang http://www.javascriptkit.com/dhtmltutors/cssreference.shtml Vi cch ny ta phi nh ngha ring cho tng phn t, khng s dng li c v mt thi gian bo tr. Thng c s dng cho nhng phn t c nh dng ring.2. nh dng CSS thng qua lpCch th hai linh hot hn v thng p dng cho cc trang web ln, l ngi ta nh ngha sn mt s CSS gi l lp (class), sau c th p dng lp ny cho cc phn t mong mun. Phn nh ngha CSS ny c t trong cp th ... . nh ngha: ..... . { Tn_Thuc_tnh_1: Gi_tr_1; Tn_Thuc_tnh_2: Gi_tr_2; .................................... } S dng: V d: nh ngha 2 lp MC_LN v MC_NH, sau p dng nh dng ni dung mc lc ca mt cun ti liu. Lp MC_LNc 2 thuc tnh: Mu ch m, c ch 16 Lp MC_NH c 3 thuc tnh: Mu ch m, in nghing, c ch 14V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.18Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin CSS .MC_LN { font-weight:bold; font-size:16pt; }.MC_NH{ font-weight:bold; font-size:14pt; font-style:italic; } Mc lc Bi 1: To trang web tnh vi HTML
1.1 L thuyt
1.2 Thc hnh

Bi 2: S dng JavaScript
2.1 L thuyt
2.2 Thc hnh

Bi 3: To trang web tnh vi CSS & JS
3.1 L thuyt
3.2 Thc hnh Kt qu cho ta:Mc lcBi 1: To trang web tnh vi HTML1.1 L thuyt 1.2 Thc hnhBi 2: S dng JavaScript2.1 L thuyt 2.2 Thc hnhBi 3: To trang web tnh vi CSS & JS3.1 L thuyt 3.2 Thc hnhV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.19Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin ** u im ca nh ngha lp ny l ta ch phi nh ngha mt ln, sau s dng cho nhiu phn t. Vic bo tr v sa cha s d dng v nhanh chng hn. Ngoi ra, ngi ta c th nh ngha CSS trong mt tp ring, sau c th s dng trong tt c cc trang khc nhau. s dng (gi) cc CSS nh ngha trong mt file xyz.css no , ta ch cn khai bo nh sau trong phn Head: *Ch : Ni dung trang css ch cha nh ngha cc lp, khng c th kiu nh II. Thc hnh1. Yu cuVit li trang nhp thng tin nh cung cp cc bi hc trc nhng s dng CSS nh ngha li cc phn t. Kt qu sau cng cn t ti t nht phi nh sau:Giao din kt qu2. Hng dn- S dng nh dng CSS ti dng v to lp CSS. - Cc phn t c cng thuc tnh th nn to mt lp ring, sau p dng lp ny cho th bng thuc tnh Classs= . V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.20Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin - Tra cu bng CSS trong bn mm i km hoc trang .www.w3schools.com3. Minh ho mu CSS .Nhn { font-style:italic; font-size:12pt; color:Gray; text-align:right; width:150px; padding-right:5px; } .Bng { border-collapse:collapse; border-style:solid ; border-width:1px; border-color:gray; margin-left:auto; margin-right:auto; width:600px; } td { padding:3px; } td.CnhPhi { border-right:solid 1px gray; } .TiuNCC { text-align:center; border-right:solid 1px gray; border-bottom:solid 1px gray; } NHP THNG TIN NH CC V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.21Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Tn Nh CC Ngi i din Chc v in thoi a ch NCC Thnh ph: ----Chn---- H ni TP H Ch Minh Nng Hi Phng Hng Yn Hi Dng Qung NinhV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.22Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinNi khc Vng: M bu in: Quc gia: Vit Nam Lo Campuchia Ni khc in thoi: S Fax: a ch website
V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.23Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Danh sch nh cung cp hin c M NCC Tn NCC a ch Homepage 1 Cng ty FPT Lng H - Ba nh www.fpt.vn 2 Cng ty CMC Hn Thuyn - Hai B Trng www.cmc.vn 3 Cng ty Trn Anh Ging v - Ba nh www.trananh.vn 4. Ghi chNu mun ly gi tr ca mt mc trong Listbox (Select) th vit: .options[Ch s ca mc].text ly phn Text (phn hin th) hoc vit: .options[Ch s ca mc].value ly phn value. margin-left, margin-right = "auto". Mun t bng vo gia form, t thuc tnhCc th con c tnh k tha th cha, tc l: Khi th cha (th cha) nh ngha mt thuc tnh A no th cc th con cng c c tnh A. V d: nu ta vit Mu g? Mu xanh th tt cc cc ni dung ca th h2 v h3 u c mu xanh. (Tr phi chnh th h2 hay h3 nh ngha li). trnh by c tt d liu di dng hng, ct (bng) th cn phi hiu rt r cc thuc tnh qui nh cch thc hin th ca cc phn t nh TD, TR, TABLE. C th tham kho y v vn ny ti: V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.24Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin http://www.w3schools.com/CSS/ . c bit mi phn t u c cc thuc tnh hin th nh Margin, Border, padding. Mun hin th ng cn nm c ngha ca cc khi nim ny.border-right Margin-left padding-bottomM hnh biu din khi nim margin, border, padding S dng CSS khi c nhiu phn t c cng nh dng ging nhau trong trang/ ng dng web.BI 4 (Tip): THAY I NI DUNG TRANG WEB BNG CSS V JS NH DNG TRANG WEB VI CSSMc tiuI. L thuyt1. Tham chiu n mt phn t trong trang web c hay thay i ni dung hay thuc tnh ca phn t bt k th iu cn lm trc tin l phi tham chiu n phn t . Vi mi trnh duyt khc nhau c th c cc cch khc nhau, tuy nhin cch truy cp sau y tng thch vi hu ht cc trnh duyt. tham chiu n mt phn t, c th dng 2 cch ph bin sau: 1.1 Dng hm getElementById("Gi tr thuc tnh id ca phn t") V d, c phn t: Chng I . Nu mun tham chiu (truy xut) n phn t H1 ny, ta vit: document.getElementById("TieuDe"). Khi truy xut n phn t no th ta hon ton c th c hoc thay i ni dung/ thuc tnh ca n. 1.2 Dng hm getElementsByTag("Tn ca th"). Hm ny tr v mt mng cha cc phn t c cng loi/ tn (th) nm trong phn t. Ch : bt k phn t no cng c phng thc getElementByTag, v vy khi ta vit document.getElementsByTag s tr v cc phn t nm trong document, nu ta vit form1.getElementsByTag th tr v cc phn t nm trong form, v.v... V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.25Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin 1.3 Truy xut n tt c cc phn t con ca mt phn t bt k. Mi phn t u c thuc tnh childNodes (mng) cha cc nt con nm bn trong n. V vy c th dng vng lp duyt tt c cc phn t bn trong n. Thuc tnh ChildNodes li c mt thuc tnh con l length cho bit s phn t bn trong (phn t u c ch s 0).2. Tham chiu n mt thuc tnh ca phn tKhi tham chiu c n phn t th vic tham chiu n thuc tnh kh d dng, c th vit theo c php sau: .. V d: ( y, type, value v id l cc thuc tnh ca th input). Nu mun truy xut n thuc tnh value, ta vit: document.getElementById("button1").value.3. Thay i ni dung ca mt phn t3.1 Qui nh v vic vit tn thuc tnh Trong cc bi trc, khi nh ngha style cho mt phn t, tn thuc tnh c th c cha du "-", v d: Hello . Tuy nhin khi x l trong cc cu lnh Javascript th thuc tnh ny cn vit li theo qui tc sau: Chuyn ch ci ngay sau du "-" thnh ch hoa sau b du tr ny i. V d tn thuc tnh trn s vit li thnh fontSize v backgroundColor. 3.1 Thay i thuc tnh ca phn t C php: . = V d c phn t: , sau mun thay ni dung "Click here bng "Thc hin" th vit nh sau: document.getElementById("button1").value= "Thc hin". **Ch : C nhng thuc tnh ch c nh thuc tnh "type" chng hn. 3.2 Thay i style ca phn t bng Javascript Khi nh ngha phn t, mi style cha cc thuc tnh ring (v d: Hello ), lc nu mun thay i cc thuc tnh ca style th vit nh sau: document.getElementById().style. =. Ch : tun th cch t tn trn. V d: t mu nn cho phn t hello trn thnh mu , nh sau: document.getElementById("hello").style.backgroundColor = "red";V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.26Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinII. Thc hnh1 Yu cu1.1 V giao dingiao din trang web 1.2 Yu cu v chc nng/ x l - Khi ngi dng click vo nt "Thm mi", h thng s thm bn ghi vo danh sch NCC pha di nu d liu hp l, tip theo xo cc nhp v a focus v Tn nh CC. - Trng hp d liu khng hp l (Tn NCC trng, cha chn thnh ph, in thoi cha k t ngoi s, a ch website khng bt u bng http://) th a ra thng bo, sau t focus vo v tr nhp sai km t nn mu vng.V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.27Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin2 Hng dn t nn vng, truy cp vo thuc tnh backgroundColor ca style thuc phn t tng ng. thng bo, dng hm alert xo form, gi phng thc reset() ca form. thm mt hng vo bng, thc hin trnh t: + thm hng (row hay tr) mi: Gi phng thc insertRow(V tr cn thm) ca bng + thuc tnh rows.length ca bng cho bit s phn t (hng trong bng) - thm mt (cell hay ) vo hng, dng phng thc insertCell(th t ) ca i tng row. t thuc tnh con trong thuc tnh style ca mi , ta li s dng c php truy cp nh phn 3.23 Minh Ho mu CSS .Nhn { font-style:italic; font-size:12pt; color:Gray; text-align:right; width:150px; padding-right:5px; } .Bng { border-collapse:collapse; border-style:solid ; border-width:1px; border-color:gray; margin-left:auto; margin-right:auto; width:600px; } td { padding:3px; } td.CnhPhi { border-right:solid 1px gray; } .TiuNCC { text-align:center;V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.28Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tinborder-right:solid 1px gray; border-bottom:solid 1px gray; } function AddRow() { if (KiemTraDuLieu() == false ) return false; var tbl=document.getElementById ("tblDSNCC"); var row=tbl.insertRow(tbl.rows.length); var cell=row.insertCell(0); //Ct m nh cung cp cell.innerHTML=tbl.rows.length-2; cell.style.color="blue"; cell.style.textAlign="center"; cell.style.borderRightStyle="solid"; cell.style.borderRightColor="gray"; cell.style.borderRightWidth="1px"; //Ct Tn nh cung cp cell=row.insertCell(1); cell.innerHTML= document.getElementById("txtNCC").value ; cell.style.color="blue"; cell.style.textAlign="left"; cell.style.borderRightStyle="solid"; cell.style.borderRightColor="gray"; cell.style.borderRightWidth="1px"; //Ct a ch nh cung cp cell=row.insertCell(2); cell.innerHTML= document.getElementById("txtDiaChi").value ; cell.style.color="blue"; cell.style.textAlign="left"; cell.style.borderRightStyle="solid"; cell.style.borderRightColor="gray"; cell.style.borderRightWidth="1px"; //Ct a ch website cell=row.insertCell(3); var URL= document.getElementById("txtHomePage").value ; cell.innerHTML= "" + URL + ""; cell.style.color="blue"; cell.style.textAlign="left"; cell.style.borderRightStyle="solid"; cell.style.borderRightColor="gray"; cell.style.borderRightWidth="1px"; // Nu mun gi i th vit cu lnh // document.forms["form1"].submit(); //xo form nhp bn ghi mi document.getElementById ("form1").reset(); document.getElementById ("txtNCC").focus (); } //Hm kim tra d liu nhp vo c hp l hay khng. tr v true nu hp l.V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.29Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tinfunction KiemTraDuLieu() { if (document.getElementById("txtNCC").value == "") { alert ("Bn phi nhp tn nh cung cp !"); document.getElementById("txtNCC").focus(); document.getElementById("txtNCC").style.backgroundColor="yellow"; return false ; } if (document.getElementById("lstCity").selectedIndex == 0) { alert ("Bn cha chn Thnh ph !"); document.getElementById("lstCity").focus(); document.getElementById("lstCity").style.backgroundColor="yellow"; return false ; } if (isNaN(document.getElementById("txtTelephone").value) == true ) { alert ("S in thoi phi l cc k t s ! "); document.getElementById("txtTelephone").focus(); document.getElementById("txtTelephone").style.backgroundColor="yellow"; return false; } var homepage=document.getElementById("txtHomePage").value.toLowerCase() if (homepage.indexOf("http://")==-1) { alert ("a ch website khng ng, hy nhp theo dng http://"); document.getElementById("txtHomePage").focus(); document.getElementById("txtHomePage").style.backgroundColor="yellow"; return false; } return true; //d liu nhp hp l. } function ClearBackgroundColor(objToClear) { objToClear.style.backgroundColor="white"; } NHP THNG TIN NH CC Tn Nh CC V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.30Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Ngi i din Chc v in thoi a ch NCC Thnh ph: ----Chn---- H ni TP H Ch Minh Nng Ni khc Vng: V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.31Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin M bu in: Quc gia: Vit Nam Lo Campuchia Ni khc in thoi: S Fax: a ch website
Danh sch nh cung cp hin c V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.32Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinM NCC Tn NCC a ch Homepage 1 Cng ty FPT Lng H - Ba nh www.fpt.vn 2 Cng ty CMC Hn Thuyn - Hai B Trng www.cmc.vn 3 Cng ty Trn Anh Ging v - Ba nh www.trananh.vn 4 Ghi chMi phn t (th) u c thuc tnh innerHTML. thuc tnh ny chnh l phn nm gia th ng v th m. V d vi Hello world , th innerHTML chnh l : "Hello world ". y l c s ta thay i ni dung ca trang web. Hy lun ghi nh, thay i ni dung/ thuc tnh/ style ca phn t th trc ht phi truy cp/ tham chiu c n phn t . Cch truy cp hay dng l hm document.getElementById("Id ca th").BI S 5: ASP.NET v Web form I. L thuyt1. M hnh lp trnh pha my chTrong th gii web, tt c cc giao tip gia Client (trnh duyt) v Server (web server) u c thc hin theo c ch Request and Response. Tc l, trc tin pha my khch cn phi requesst (gi yu cu) ti Server, sau pha server s response (hi p) li yu cu. Cng mt c ch ny, ngi ta c 2 cch tip cn x l request trang web t my khch: Cch 1: Khi my khch yu cu mt trang v d trang abc. th my ch s c ton b ni dung ca trang v gi v cho pha my khch m khng thc hin bt k x l no. N V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.33Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin hon ton khng qua tm n ngha bn trong ca trang abc. Ni dung trang ny sau s c pha trnh duyt x l. Cch 2: Khi my khch yu cu mt trang v d trang xyz. th my ch s c ton b ni dung ca trang v x l ti Server (trc khi gi v cho client) c kt qu, tip theo ly kt qu x l c gi v cho pha my khch. Kt qu tr v cho my khch c th cha cc phn t HTML, cc cu lnh JavaScript, cc nh ngha kiu CSS.v tip tc c pha client (trnh duyt) x l nh cch 1. Vi cch 1, do vic x l khng din ra bn pha server nn trang web khng th c/ ghi cc d liu trn Server c (v d Danh sch khch hng, danh mc sn phm,.). V vy n ch ph hp vi cc trang web n gin, khng i hi x l chi tit. Vi cch 2, do vic x l thng tin ti server nn hon ton c th c/ ghi d liu trn chnh server . V vy, n ph hp vi cc d n ln v tnh bo mt cao. M hnh theo cch ny gi l m hnh lp trnh pha my ch. Di y l hnh nh minh ha cho 2 m hnh ny: M hnh lp trnh pha my khch (Client side)V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.34Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin M hnh lp trnh pha my chCu hi: Khi no th mt trang s c x l bn Server trc ?. hay ni cch khc l khi no th c gi l x l theo m hnh pha server? Tr li: Cc trang (file) c ui m rng m server c th x l, v d: asp, php, jsp, aspx Cu hi: C th ly mt v d v mt trang s c x l pha server v trang s khng c x l pha server ? Trang Trang1.htm Hello world Trang2.aspx Untitled Page 2 dng ny s c x l bn pha server trc Cu hi: Chng trnh Client v server c nht thit phi nm trn hai my tnh ring bit khng ? v Client l cc trnh duyt ri (IE, FireFox), cn server l chng trnh no ? V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.35Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Tr li: Hai chng trnh ny hon ton c th nm trn cng mt my tnh. Chng trnh server thc cht l mt chng trnh c tn l IIS (Internet Information Service). Cu hi: Phi vit nh th no server hiu l cn phi x l bn pha server trc khi gi v cho pha Client ? Tr li: Trc tin phi t phn m rng cho file (v d .aspx), sau trong trnh duyt cn phi t nhng ni dung mun x l bn pha server trong cp th c bit, v d:Hoc: *** Chnh cc k hiu v Runat = Server mch bo Server rng : Hy x l ni dung bn pha server i!. Nu khng c nhng k hiu ny th mc nhin server lm mi vic l gi tr li cho trnh duyt x l. Cu hi: Sao khng gi ngay cho trnh duyt x l nh trc y m c phi server x l !. Client x l s gim ti cho server, iu ny chng tt hn sao ? Tr li: V trnh duyt ch c th hiu v x l c cc th HTML v Javascript thi, cn n khng th x l c cc ni dung phc tp. V d n khng hiu asp:Calendar l g ?2 C ch x l file ASP.NET pha my ch.i vi cc trang ASP.NET, th c ch x l ging nh m t trn, tc l theo m hnh x l bn pha server. Nhng c b sung thm tnh nng Compile and Cache:V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.36Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinGii thch c ch x l trn: - Bc 0: Ngi lp trnh phi to cc trang ASPX (gi s tn trang l abc.aspx) v t n vo trong th mc web ca web server (c tn l www.server.com). Trn thanh a ch ca trnh duyt, ngi dng nhp trang www.server.com/abc.aspx. - Bc 2: Trnh duyt gi yu cu ti server vi ni dung: Lm n gi cho ti trang abc.aspx th tt !. - Bc 3: web server s bin dch code ca trang aspx (bao gm c cc m code vb.net/ c# - gi l code behind hay code file) thnh class. - Bc 4: Lp sau khi c bin dch s c server thc thi. - Bc 5: Server tr kt qu thc thi v cho trnh duyt (trang HTML). Ring vi ASP.NET th vic bin dch s c thc hin thng minh hn, nh sau:V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.37Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.38Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin3 Mt s v d minh ha.3.1 Yu cu x l ti pha server thng qua Runat=ServerV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.39Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin 3.2 Yu cu x l bn pha server thng qua cp th Ngoi 2 cch trn, cn 2 cch yu cu x l trang web trc tip trn server, l: t cc cu lnh ngay trong cp th Script, nhng c thuc tnh Runat = Server:.. . /// /// Cc cu lnh/ khai bo bin/ khai bo hm/ nh ngha lp v.v... /// cn x l bn pha server th t vo y ! V d: /// string HoVaTen = "Aptech Center"; public int Tong (int a, int b) { return a + b; } // Hoc nh ngha lp public class Example { public int Tich (int a, int b) { return a * b; } } V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.40Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin.. 3.3 Yu cu x l bn server thng qua ScriptV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.41Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin 3.4 Yu cu x l bn pha server bng cch t trong file Code4 Webform trong ASP.NET xy dng ng dng web, ASP.NET cung cp sn cho cc nh lp trnh rt nhiu lp ngay khi ci t .NET framework. Trong s ny c mt lp c bit quan trng l Page. Mi lp Page s trnh by mt trang ti liu tng ng vi mt window v c gi l mt web form. Web form l mt cng ngh cho php xy dng cc trang web trong c th lp trnh c. Cc trang ny gi l ASP.NET web form pages hay ngn gn l web form. Cc trang web xy dng bng ASP.NET s khng ph thuc vo trnh duyt (tc l trnh duyt no cng cho kt qu nh nhau v hin th ging nhau). Mt s u im ca web forms: Web forms c th c thit k v lp trnh thng qua cc cng c pht trin ngdng nhanh (RAD). Web form h tr mt tp cc iu khin (controls) c th m rng. Bt k mt ngn ng .NET no cng c th c dng lp trnh vi web forms. Asp s dng trnh thc thi ngn ng chung (CLR) ca .NET framework do thahng mi u th ca .NET Framework. V d : Kh nng tha k.5 Tm hiu cu trc trang ASP.NETMt trang ASP.NET bao gm c phn giao din ngi dng v phn x l logic bn trong. Giao din ngi dng chu trch nhim hin th cc thng tin v tip nhn d liu t ngi dng, trong khi phn x l (lp trnh) m nhim vic iu khin s tng tc ca ngi dng vi trang web. Phn giao din ngi dng bao gm mt file cha ngn ng nh du V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319 P.42Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin nh HTML hoc XML v server controls chng hn. File ny c gi l mt Trang (Page) v c ui m rng l aspx. Phn p ng cc tng tc ca ngi dng vi trang web c thc hin bi mt ngn ng lp trnh chng hn nh Visual Basic.NET v C#. Chng ta c th thc hin vic vit code bng bt k ngn ng lp trnh no c h tr bi CLR ngay trong trang ASPX hoc tch ra mt file ring. File tch ring ny c gi l file Code Behind hay mi y gi l Code file. ui m rng ca Code file l .VB (Nu dng ngn ng Visual Basic) hoc .CS (nu dng ngn ng C#).Cch lu tr ny c minh ha qua mt ng dng c th di y. Trong , trang web th nht Default2.aspx cha c code (C#) v giao din (HTML) cn trang web th hai t code v giao din ra 2 file ring bit. default.aspx v default.cs. *** Ch : C th kt hp va t code trong file aspx va t code trong file cs.Trang Default2.aspx cha code bn trong n.Code c t trong default.cs Cn phn giao din cha trong default.aspxV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.43Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinMt webform bao gm 2 thnh phn: Thnh phn giao din (trang thisfile.aspx) Thnh phn x l (lp trnh) thisfile.csV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.44Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Phn tch mt trang ASP.NET thc t (Trang ny lu code v giao din trn 2 file):File Default.aspx Server side - example 3 Ni dung file code (default.cs) nh sau: File Default.csusing System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class Lession03_default : System.Web.UI.Page { protected void Tong (object sender, EventArgs e) { txtKetQua.Text = (int.Parse (txtA.Text) + int.Parse (txtB.Text)).ToString (); } }Trong file default.aspx:- Page Language="C#" : ch ra rng ngn ng c s dng lp trnh lC#- CodeFile="~/Lession 03/Default.aspx.cs": Cho bit ni dung file chacode x l l file ~/Lession 03/Default.aspx.cs. - Inherits ="Lession03_default": Cho bit l trang giao din tha k t lp no trong file ~/Lession 03/Default.aspx.cs (Bi v mt file c th c cha nhiu lp).- Server side - example 3 V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.45Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinCho bit l th ny cn c x l bn pha server. Tuy nhin ni dung trong th ny khng c g c bit x l v kt qu sau x l s l (khng c runat=server): Server side - example 3 : Cho bit l ni dung trong cp th form cn c x l bn pha server. : l th to ra phn t textbox, tuy nhin do c thuc tnh runat = server nn vic to ny s c thc hin bn server, c kt qu tr v (l - public int Hieu (int a, int b) { return a - b; } on script ny c thuc tnh runat=Server, v vy n s c x l pha server. Thuc tnh language = C# cho bit ngn ng s dng vit l C Sharp.Trong file default.csNi dung file ny hon ton cha cc cu lnh ca ngn ng lp trnh VB.NET hoc C#. Vic vit code cho file hon ton ging nh vit cc chng trnh trn window form hay chng trnh Console. Ch : Trong file ny khng c cha trc tip cc th HTML. Cc cu lnh trong file ny HON TON C PHP TRUY CP TI CC PHN T trong file default.aspx c thuc tnh runat = server. Cu hi: Nu trong file default.cs c dng lnh sau:cmdTinhTong.Text = Tnh tng; th chng trnh c bo li khng ? V sao ?6. Code behind v vit code pha Server.Cc file cha m code (VB.NET hoc C#) c gi l Code file (cch gi mi) hay Code behind (cch gi c). M lnh ti y thng x l cc tc v lin quan n nghip v, trong cng c cc cu lnh cho php gi kt qu v cho pha trnh duyt. C th l phng thc write ca i tng Response. V d mun tr mt xu S v cho trnh duyt hin th, ta vit: Response.write(S). Vic s dng phng thc write ny nh th no sinh ra cc phn t cho trnh duyt hiu l mt k nng quan trng. Nhn chung, ngi ta thng chia cc web form thnh 2 phn l trang cha giao din (aspx) v trang cha m code (.vb; .cs) m bo tnh chuyn mn ha v d bo tr hn.V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.46Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin7. HTML Server Controls v Web controls7.1 Gii thiu gip cho vic pht trin cc ng dng web nhanh chng v thun tin, ASP.NET cung cp cho chng ta mt tp hp cc iu khin sn c thc hin hu ht cc cng vic ph bin hng ngy. Cc iu khin ny chia lm 2 loi: HTML Server Control v ASP.NET server control. Cc iu khin (phn t) ny u c x l bn pha server (c thuc tnh runat=server) v vy chng ta u c th truy cp n cc phn t ny bng cc cu lnh C# (cc cu lnh nm bn trong Code file). im khc bit gia HTML Server control v ASP.NET server control ch: iu khin HTML Server control th c s lng v cch thc to ging ht cc phn t HTML m ta vn to trong trang HTML, ch khc mt iu l c thm runat = server; iu khin ASP.NET control th c nhiu thuc tnh hn, thc hin c chc nng phc tp hn HTMLServer controls.-7.2 Cch thc to phn t HTML Server Control v ASP.NET control a) HTML Server control (Gii thiu bit, khng nn dng) C php to phn t HTML Server control:o o Trong : Tn loi th l input, select, p, h1, . V d: b) ASP.NET server control (Nn dng) C php to phn t ASP.NET server control o o V d: o o oTrong asp: l bt buc, Loi_PT c th l button, textbox, calendar, select, treeview, adRotator, listview, gridview, image,. runat="server" cell V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.47Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin **** Ch **** c th truy xut ti cc phn t ny trong Code file (hay server script pha server)th mi phn t cn phi t cho n mt id duy nht. Trong tt c cc ng dung, nu c th c th nn dng cc ASP.NET server control m bo tnh tng thch vi trnh duyt. Cc iu khin ASP.NET server control hon ton c th do ngi dng to ra. (phnny s c cp trong phn Lp trnh ASP.NET nng cao)II. Thc hnh1. Yu cuXy dng li trang web v nhp thng tin nh cung cp bi trc HON TON bng cc ASP Server Control. Cc hm kim tra cng c vit bng m lnh pha Server (Vit bng C#.NET).Giao din trang webV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.48Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin2. Hng dnMi th gi y c thm tin t asp:, v d: v thuc tnh runat="server". Vit cc lnh x l ng vi cc s kin trong ca s code ca VS.NET. gi mt hm/ phng thc khi mt s kin xy ra, ta thc hin theo cch: + Vit mt hm trong ca s code dng: Tn_Hm(object sender, EventArgs e) + Gn tn hm ny cho tn s kin ca phn t. V d: Gi hm "Thc_Hin" khi ngi dng click chut ln nt "Thm" nh sau: Trong ca s code: Protected void Thc_Hin(Object sender, EventArgs e) {... } Trong ca s son code html: .3. Minh ho muV y c c phn x l pha server, do vy s c thm trang m code. trang Default.aspx Chng trnh qun l bn hng - Nhp thng tin nh cung cp NHP THNG TIN NH CUNG CP Tn Nh CC Ngi i din V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.49Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Chc v in thoi a ch NCC Thnh ph: nh logo: M bu in: Quc gia: V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.50Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin in thoi: S Fax: a ch website
Danh sch nh cung cp hin c M NCC Tn NCC a ch Homepage 1V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.51Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Cng ty FPT Lng H - Ba nh www.fpt.vn Trang Default.aspx.csusing System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { KhoiTaoTrangThai (); } //Hm t li trng thi mt s phn t v trng thi thng. private void KhoiTaoTrangThai () { lblThongBao.Text = ""; txtNCC.BackColor = System.Drawing.Color.White; lstCity.BackColor = System.Drawing.Color.White; txtHomePage.Style.Value = "background-color:white"; } // Hm kim tra xem d liu nhp hp l hay cha. True nu hp l. protected Boolean KiemTraDulieu () { if (txtNCC.Text == "") { lblThongBao.Text = "Bn cha nhp tn nh cung cp !"; txtNCC.BackColor = System.Drawing.Color.Yellow; txtNCC.Focus (); return false; } if (lstCity.SelectedIndex aptech Request("txtPassword") => 123456 1.2 Cc thnh phn (thuc tnh v phng thc) chnh Phng thc: Request.QueryString.Get("Tn_Phn t cn c"): c gi tr ca mt phn tc gi theo phng thc Get (Method = "Get") Phng thc Request.Form.Get("Tn_Phn t cn c"): c gi tr ca mtphn t c gi theo phng thc Post (Method = "Post"). Ch : C th dng Request.Form.GetValues v Request.Form.GetValues c. V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.55Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin 1.3 V d s dng Xy dng 2 trang web : trang Default.aspx, trong c 2 textbox cha tn v mt khu. Khi ngi dng click vo nt submit th gi tn v mt khu sang trang Webform1.aspx hin th.Trang ngun (gi): Default.aspxKt qu nhn v. Code ca 2 trang s nh sau:V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.56Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinDefault.aspxWebform1.aspxV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.57Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinCode x l ca trang webform1.aspx.cs2 Response Object1.1 i tng Response dng lm g ? i tng ny c dng gi ni dung (mt xu) bt k v cho trnh duyt. 1.2 Cc thnh phn (thuc tnh v phng thc) chnh Phng thc: Response.write() dng gi gi tr biu thc truyn vocho pha trnh duyt. Phng thc: Flush dng a d liu cn trong b m pha server v cho phatrnh duyt. Phng thc Response.Redirect(a ch URL): Chuyn ti mt trang khc.1.3 V d s dng To mt trang Login hon ton bng phng thc Response.write nh sau:V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.58Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.59Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Trang code s nh sau:3 Server Object3.1 i tng Server dng lm g ? Dng to cc i tng COM Ly thng tin v tn my nh x ng dn o thnh ng dn vt l.3.2 Cc thnh phn (thuc tnh v phng thc) chnh CreateObject(COM Specification) t dng trong ng dng .NET MachineName: String; Tr v tn ca my tnh server ang chy. Mappath(Virtual path): Tr v ng dn vt l ca ng dn o tng ng.3.3 V d s dng In ra tn ca my ch hin hnh: Response.Write(Server.MachineName); Cho bit ng dn thc s trn cng (th mc vt l) ca trang hin hnh (trangdefault.aspx) : Server.Mappath(default.aspx); Cho bit ng dn vt l ng vi tp QLCB.Mdb, bit rng tp ny nm trong mtth mc con l App_Data: Server.Mappath(App_Data/QLDB.MDB);V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.60Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin4 Session Object4.1. Bin Sesstion Khi vo mt website, ngi dng c th duyt rt nhiu trang web ca website . Nu mun lu tr thng tin v khch thm ny trong c phin lm vic th c th lu vo cc bin, gi l bin Session. Ni cch khc, bin session l mt bin m mi trang trong mt phin (Session) u c th truy xut. 4.2. i tng Session L i tng dng qun l (to, c, ghi) cc bin sesstion v mt s thng s khc. + C php to bin Session nh sau:Session.Add("Tn_Bin","Gi tr khi to");Lu : Tn bin phi t trong cp du nhy kp. c th l xu k t hoc s... V d : To mt bin tn l MaNguoiDung v gn gi tr l TK34 Session.Add(MaNguoiDung,TK34); + C php c gi tr ca mt bin sesstion nh sau: Session.Contents[Tn_Bin] hoc dng ch s: Session.Contents[i]; + C php ghi (thay i) gi tr ca bin session: Session.Contents[Tn_Bin] = V d: Response.write(M ngi dng l : &Session.Contents[MaNguoiDung]) Ring vi i tng Session, n cn c cc s kin. Cc s kin ny t ng c gi mi khi mt phin lm vic c to ra. Cc s kin ny c tn l On_Start v On_End. Cc s kin ny c t trong file Global.asax.5 Application Object5.1 i tng Application dng lm g ? Dng qun l cc bin c phm vi ton ng dng. C tc dng n mi ngi dng. 5.2. Khi nim bin ton ng dng Bin ton ng dng l bin c tc dng i vi mi ngi dng truy cp vo website. Mi trang aspx.cs u c th truy cp n bin ny v d bt k thi im no. 5.3. i tng Application Dng qun l (To, c, ghi) cc bin c phm vi ton ng dng. + C php to bin Application: Application.Add(Tn_Bin, ); + V d: To bin So_Nguoi_Truy_Cap Application.Add(So_Nguoi_Truy_Cap, 0) V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319 P.61Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin + Truy xut n bin Application: Application.Contents[Tn_Bin] hoc ch s: Application.Contents[i] + V d : c v ghi bin Application. Application.Contents[So_Nguoi_Truy_Cap] = Application.Contents[So_Nguoi_Truy_Cap] + 1 Response.write(Bn l v khch th: & Application.Contents[So_Nguoi_Truy_Cap]) Ngoi ra, i tng Application cn c 2 phng thc thng dng l Application.Lock(): kha khng cho ngi khc sa i cc bin ton cc v Application.UnLock() m kha . i tng Application cng c 2 s kin l Application_OnStart v Application_OnEND. S kin OnStart ch c kch hot duy nht mt ln khi yu cu u tin pht sinh. S kin OnEND c kch hot khi dch v web dng (unload). i tng Application c 2 phng thc l Lock v Unlock. Khi gi phng thc Lock (kha) th tt c cc ng dng khng c php thay i cc gi tr Application. cc ng dng khc c php thay i cc bin Application th gi phng thc Unlock. M lnh vit cho 2 s kin ny cng c t trong file Global.asa.II. Thc hnh1. Bi 1: To mt trang LoginNu ngi dng nhp user name v mt khu tng ng l asp.net v 123456 th c php truy cp cc trang Index.aspx, tri li mi ln ngi dng truy cp n trang Index.aspx th u c chuyn ti trang Login.aspx. Minh ha: Cn to 3 trang l Home.aspx/cs, Login.aspx/cs v Global.asax nh sau:V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.62Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Thanh ton - Trang cn phi Login trc khi xem y l ni dung rt quan trng, bn ch c th thy dng ny sau khi Login ! Ni dung trang Home.aspxV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.63Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tinusing System; using System.Web; public partial class Home : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (Session.Contents ["TrangThai"].ToString () == "chuadangnhap") { Response.Redirect ("Login.aspx"); } } }Trang Home.aspx.cs void Application_Start(object sender, EventArgs e) { // Code that runs on application startup } void Application_End(object sender, EventArgs e) { // Code that runs on application shutdown } void Application_Error(object sender, EventArgs e) { // Code that runs when an unhandled error occurs } void Session_Start(object sender, EventArgs e) { // Code that runs when a new session is started Session.Add ("TrangThai", "chuadangnhap"); } void Session_End(object sender, EventArgs e) { } Trang Global.asaxV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.64Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin System Login User name (asp.net): Password (123456): Trang Login.aspxusing System; public partial class Login : System.Web.UI.Page { protected void cmdLogin_Click (object sender, EventArgs e) { if (txtUserID.Text == "asp.net" && txtPassword.Text == "123456") { Session.Contents ["TrangThai"] = "DaDangNhap"; Response.Redirect ("Home.aspx"); } } }V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.65Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Trang Login.aspx.csV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.66Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin2. Bi 2: To mt trang m s lng ngi truy cp.Dng bin tp text lu. Hng dn: To 2 trang l Index.aspx/cs v Global.asax vi ni dung sau: Trang Index.aspx Home Page - Hit counter Cho mng bn n website ca chng ti Trang Index.aspx.csusing System; public partial class Index : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { lblSLKhach.Text="Bn l v khch th: " + Application.Contents["SLTruyCap"].ToString(); } }Trang Global.asax void Application_Start(object sender, EventArgs e) { Application.Lock (); System.IO.StreamReader sr; sr = new System.IO.StreamReader (Server.MapPath ("SL.txt")); string S = sr.ReadLine (); sr.Close (); Application.UnLock (); //To mt bin Applciation l SLTruyCap v khi to gi tr S Application.Add ("SLTruyCap", S);V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.67Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin} void Application_End(object sender, EventArgs e) { // Code that runs on application shutdown } void Application_Error(object sender, EventArgs e) { // Code that runs when an unhandled error occurs } void Session_Start(object sender, EventArgs e) { //Tng s lng ngi truy cp ln 1 khi c mt ngi mi thm Application.Contents ["SLTruyCap"] = int.Parse (Application.Contents ["SLTruyCap"].ToString ()) + 1; //Lu vo file SL.txt (m v ghi ) System.IO.StreamWriter sw; sw = new System.IO.StreamWriter (Server.MapPath ("SL.txt")); sw.Write (Application.Contents ["SLTruyCap"].ToString ()); sw.Close (); } void Session_End(object sender, EventArgs e) { } Sau khi to, chy file Index.aspx kim chng s thy rng s lng ngi truy cp lun lun tng ln bt k l server c tt hay my tnh b trc trc. y l cch c dng chnh thc m s lng lt ngi truy cp. Bn hon ton c th ci tin hin th s lng ngi truy cp bng hnh nh cho sinh ng hn.V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.68Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinBI 7: CNG NGH ADO.NETMc tiu: Kt thc bi hc ny, hc vin c th: To c c s d liu cho h thng qun l cn b S dng c cc lp truy xut ca ADO.NET Hin th d liu trn trnh duyt bng cc iu khin ASP Server controls. Hon thin chc nng Nhp h s cn b, trong c lu vo Database. I. L thuyt1. Gii thiu chungKhi pht trin cc ng dng trn nn web th cng vic ch yu phi gii quyt l x l cc nghip v, trong phn ln l x l C s d liu. Trong mi trng pht trin Microsoft .NET tt c cc ng dng webform hay winform u thng nht s dng chung mt b th vin truy xut v thao tc C s d liu gi l ADO.NET (Active Data Object). - ADO.NET l mt tp cc lp nm trong b th vin lp c s ca .NET Framework, cho php cc ng dng windows (nh C#, VB.NET) hay ng dng web (nh ASP.NET) thao tc d dng vi cc ngun d liu. - Mc tiu chnh ca ADO.NET l: Cung cp cc lp thao tc CSDL trong c hai mi trng l phi kt ni (Disconected data) v kt ni (Connected data). Tch hp cht ch vi XML (Extensible Markup Language) Tng tc vi nhiu ngun d liu thng qua m t d liu chung. Ti u truy cp ngun d liu (OLE DB & SQL server). Lm vic trn mi trng Internet. - Cc lp ca ADO.NET c t trong Namespace l System.Data/ System.Data.oledb - ADO.NET bao gm 2 Provider (2 b th vin thng dng) thao tc vi cc CSDL l: OLE DB Provider (nm trong System.Data.OLEDB) dng truy xut n bt k CSDL no c h tr OLEDB; SQL Provider (nm trong System.Data.SQLClient) chuyn dng truy xut n CSDL SQL Server (Khng qua OLE DB nn nhanh hn). Hin nay, cc hng th ba cn cung cp cc Provider khc nh : MySQL, Oracle provider cho php ng dng .NET truy xut n cc c s d liu khng phi ca Microsoft khc. - V tr ca ADO.NET trong kin trc ca .NET FrameworkV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.69Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinV tr ca ADO.NET trong kin trc ca .net Framework T kin trc ta thy rng: ADO.NET l mt thnh phn ni ti (Instrict) ca .NET framework, do vy n c th c s dng trong tt c cc ngn ng h tr .NET nh C#, VB.NET m khng c s khc bit no (Tc l cc chc nng cng nh cch s dng hon ton ging nhau).2. Kin trc ca ADO.NETADO.NET cho php lm vic c hai ch , ch Kt ni (Connected) v phi kt ni (Disconnected). B ba Connection, Command v DataReader: cho php lm vic ch Connected; cn DataAdapter, Connection, Command v Dataset lm vic ch Disconnected. Trong ch Connected th mi khi thao tc (nh sa, xa, thm) th u i hi ng dng phi kt ni v thao tc trc tip vi c s d liu (CSDL); cn trong ch Disconnected th vn c th thm, sa, xa d liu trn i tng cc b; khng nht thit phi kt ni ngay n CSDL (Xem m hnh di).V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.70Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin~ RecordsetMdb; mdf, XML3. Cc lp thao tc vi CSDL: Connection, Command,.3.1 Lp Connection + Chc nng: L i tng c nhim v thc hin kt ni n C s d liu cc i tng nh Command thao tc vi CSDL thng qua Connection ny. + Khai bo (c nhiu cch):public OleDbConnection Cn1; public OleDbConnection Cn2 = new OleDbConnection (); public OleDbConnection Cn3 = new OleDbConnection ("Provider=Microsoft.jet.....");Mt s phng thc: + Open: Dng m kt ni: Cnn.Open(): M kt ni n CSDL do ta ch nh trong ConnectionStringP.71V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Lu : sau khi gi phng thc Open, c th xem kt ni thanh cng hay khng thng qua thuc tnh State ca Connection: if (Cnn.State == 1) Kt ni thnh cng ! + Close(): Dng ng kt ni: Cnn.Close(); Thng th nn vit nh sau trnh li : if (Cnn.State == 1) Cnn.Close(); + GetSchema: Ly thng tin v CSDL (V d tn cc bng, cc trng trongbng)Mt s thuc tnh: + State: Cho bit trng thi kt ni. (ConnectionState.Open kt ni cm) + ConnectionString: Cha cc thng tin kt ni. V d v mt trang thc hin kt ni n CSDL C:\Nwind.mdbusing System; using System.Data; using System.Data.OleDb; public partial class Lession_12_Default : System.Web.UI.Page { /// /// Hm kt ni n C s d liu /// /// ng dn ti file MDB /// Tr v i tng OledbConnection hoc null public static OleDbConnection OpenDB (string DBName) { try { OleDbConnection Conn = new OleDbConnection ();Conn.ConnectionString="Provider=Microsoft.jet.oledb.4.0;data source="+DBName;Conn.Open (); return Conn; } catch (Exception ex) { return null; } } // Kt ni n c s d liu v thng bo kt qu kt ni trn mt Label. protected void Page_Load (object sender, EventArgs e) { OleDbConnection Conn; Conn = OpenDB (@"c: \Nwind.mdb"); V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.72Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin if (Conn != null) { if (Conn.State = = ConnectionState.Open) lblThongBao.Text = " kt ni thnh cng ! " ; } else { lblThongBao.Text = "Khng th kt ni c !"; } } } Ch : Thng thng tp c s d liu c lu trong th mc App_Data. Khi c th kt ni n CSDL ny m khng cn bit th mc hin c t trong C:\ hay D:\ th cn vit ng dn ca tp nh sau:Conn = OpenDB (Server.MapPath("../App_Data/nwind.mdb"));V tr ca tp CSDL nwind.mdbV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.73Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin - Nu a cha tp CSDL c nh dng l NTFS v c t quyn truy cp th cn phi m bo rng th mc cha tp CSDL c quyn read/write cho ngi dng l IUSR_. (C th thay i quyn hoc ngi dng truy cp n th mc bng cch Right click ln th mc , chn Properties, tip theo chn th Security v Add thm ngi dng/ quyn..) 3.2 Lp Command Chc nng: Thc hin cc thao tc i vi CSDL, nh Insert, Update, delete, Select.Tuy nhin, thc hin c cc lnh ny th cn phi thng qua mt Connection no ang c m. Cch to (chnh tc):- OleDbCommand Cmd;Cmd = new OleDbCommand (); Cmd.CommandText = "Cu lnh SQL"; Cmd.Connection= OleDbConnection_Obj;Hoc vit gn hn: OleDbCommand Cmd=new OleDbCommand("Lnh SQL",OleDbConnection_Obj); Trong OleDbConnection_Obj l mt OleDbConnection m trc Open ri.Cu lnh SQL: l mt xu cha cu lnh SQL bt k. Mt s phng thc dng thc thi cu lnh SQL: int ExecuteNonQuery(): S dng khi CommandText trn thuc dng Insert,Delete, Update. Hm ny tr v s bn ghi b tc ng (affected).Object ExecuteScalar(): S dng khi CommandText trn l cu lnh SQL ch tr v mt kt qu n, v d cu lnh m tng s bn ghi : Select Count(*) Hm ny tr v hng v ct u tin ca kt qu thc thi truy vn. Cc hng v ct khc b b qua. OleDbDataReader ExecuteReader(): Dng khi CommandText l mt cu lnh chn (Select). Hm tr v l mt i tng OleDbDataReader cha kt qu thc thi cu lnh (thng l cu lnh Select). XMLReader ExecuteXMLReader(): Dng c d liu l mt tp XML. Phng thc ny ch p dng cho mt s Provider (v d SqlClient) Mt s thuc tnh CommandText: Cha cu lnh SQL cn thc thi, v d: "Select * from Employees","Insert into Employees (.) values (.)", "Delete from Employees where " Connection: cho bit l i tng Command s dng kt ni no. CommandType: Cho bit CommandText cha StoreProcedure, tn bng hay l cu lnh SQL. Mc nh thuc tnh ny c gi tr l Text.V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.74Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin V d: Xy dng mt trang web hin th tng s bn ghi ca bng Products trong c sd liu nwind.mdb.V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.75Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Default.aspx.csusing System; using System.Data; using System.Data.OleDb; public partial class Lession_12_Default : System.Web.UI.Page { // Kt ni n c s d liu v thng bo kt qu trn mt Label. protected void Page_Load (object sender, EventArgs e) { // To i tng Connection v m kt ni n CSDL OleDbConnection Conn; Conn=new OleDbConnection(); Conn.ConnectionString="Provider=Microsoft.jet.oledb.4.0; data source=" ; Conn.ConnectionString += Server.MapPath("../App_Data/nwind.mdb"); Conn.Open(); // To i tng Command v thc thi cu lnh m s bng ghi OleDbCommand Cmd; Cmd = new OleDbCommand (); Cmd.CommandText = "Select Count(*) from Products"; Cmd.Connection = Conn; // Hin th kt qu trn Label int SL = (int) Cmd.ExecuteScalar(); lblThongBao.Text = "S bn ghi trong bng Products: " + SL.ToString (); // Gii phng kt ni. Cmd.Dispose (); Conn.Close (); } }V d: Thm Tn nh cung cp vo bng Suppliers: Trang giao din Insert data V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.76Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Trang Code behind:using System; using System.Data; using System.Data.OleDb; public partial class Lession_12_Command_InsertData : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void cmdAdd_Click (object sender, EventArgs e) { // To i tng Connection v m kt ni n CSDL OleDbConnection Conn; Conn = new OleDbConnection (); Conn.ConnectionString = "Provider=Microsoft.jet.oledb.4.0; data source="; Conn.ConnectionString += Server.MapPath ("../App_Data/nwind.mdb"); Conn.Open (); // To i tng Command v thc thi cu lnh m s bng ghi OleDbCommand Cmd; Cmd = new OleDbCommand (); Cmd.CommandText = "Insert into Suppliers(CompanyName) values('" + txtNCC.Text + "')"; Cmd.Connection = Conn; Cmd.ExecuteNonQuery (); Cmd.Dispose (); Conn.Close (); } }3.3 Lp DataReader Chc nng: Dng n nhn kt qu tr v t phng thc ExecuteReader ca itng Command. N tng t nh mt Recordset ca ADO, tuy nhin d liu nhn v l Readonly v ch c theo chiu tin. Mt s phng thc: Bool Read(): Thc hin vic c mt bn ghi (mt hng) trong kt qu, sau chuyn ti bn ghi tip theo. Hm ny tr v true nu vn cn d liu, false nu c ht. DataTable: GetTableSchema() Tr v mt dataTable m t thng tin v DataReader nh tn cc ct. String: GetName(int i) Tr v tn ca ct i P.77V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinGetInt(int i), GetString(int i),, GetXXX(int i) Tr v gi tr ca ct i v chuyn v dng Int, String, Mt s thuc tnh: Boolean: HasRows cho bit l DataReader c cha d liu hay khng ? int FieldCount Cho bit s trng (Ct) ca DataReader. Bin DataReader v d Dr cho php c d liu ca tng (ct/ trng) cahng hin hnh nh sau: Dr["Tn trng"/ hoc ch s]. V d : Np Tn ca tt c sn phm trong bng Products v a vo mt ListBox. Trang giao din: OleDbDataReader demo Danh mc sn phm Trang Code Behindusing System; using System.Data; using System.Data.OleDb; public partial class Lession_12_DataReader : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { // To i tng Connection v m kt ni n CSDL OleDbConnection Conn; Conn = new OleDbConnection (); Conn.ConnectionString = "Provider=Microsoft.jet.oledb.4.0; data source="; Conn.ConnectionString += Server.MapPath ("../App_Data/nwind.mdb"); Conn.Open (); // To i tng Command v thc thi cu lnh m s bng ghi OleDbCommand Cmd; Cmd.CommandText = "Select ProductName from Products"; Cmd.Connection = Conn;V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.78Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinOleDbDataReader Dr; /// Dr = Cmd.ExecuteReader ();khng c new//Duyt v a vo lstDSSP while (Dr.Read() == true) { lstDSSP.Items.Add (Dr ["ProductName"].ToString()); } Cmd.Dispose (); Conn.Close (); } }Cu hi: Vit lstDSSP.Items.Add (Dr [0].ToString()) c c khng ?. 3.7 Lp DataColumn Chc nng: L mt thnh phn to nn DataTable. Khai bo:DataColumn Dc; Dc = new DataColumn (Tn_Ct); Hoc, to ct v ch nh kiu d liu cho ct: DataColumn Dc; Dc = new DataColumn ("Hello", System.Type.GetType(Tn_Kiu)); Trong Tn_Kiu c th l String, Int32, . Mt s phng thc: Mt s thuc tnh: Caption: Tiu ca ct ColumnName: Tn ca ct. V d :To mt ct c tn l H tn, kiu String, Tui kiu Int:DataColumn Dc_HVT; Dc_HVT = new DataColumn ("HoVaTen", System.Type.GetType ("String")); Dc_HVT.Caption = "H v tn"; DataColumn Dc_Tuoi; Dc_HVT = new DataColumn ("Tuoi", System.Type.GetType ("Int32")); Dc_HVT.Caption = "Tui";V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.79Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin 3.8 Lp DataTable Chc nng: Qun l d liu dng bng 2 chiu (Cc hng v cc ct). Khai bo:DataTable Dt ; Dt=new DataTable(); hoc Dt = new DataTable("Tn_Bng"); Mt s phng thc: DataRow NewRow() : Tr v mt i tng DataRow; Clear(): Xa tt c cc d liu trong DataTable Mt s thuc tnh: Columns: L mt tp hp, qun l ton b cc ct (Thm, xa, sa) caDataTable. Columns li c cc phng thc thm/xa ct.Rows: L mt tp hp, qun l ton b cc hng trong DataTable. Rows cng c cc phng thc thm/xa hng. Truy xut n [i,j] ca bng: Tn_Bng.Rows[i][j]. C th dng vng lp kiu nhfor (i=0; i < Dt.Rows.Count; i++) for (j=0; j < Dt.Columns.Count; j++) { Dt.Rows[i][j] } duyt ton b cc trong Table. V d : To mt bng c 2 ct l H tn (Kiu String) v Tui (Kiu Int32).DataColumn Dc_HVT; Dc_HVT = new DataColumn ("HoVaTen", Type.GetType ("String")); Dc_HVT.Caption = "H v tn"; DataColumn Dc_Tuoi; Dc_HVT = new DataColumn ("Tuoi", Type.GetType ("Int32")); Dc_HVT.Caption = "Tui"; DataTable Dt ; Dt=new DataTable(); Dt.Columns.Add (Dc_HVT); // To ct h tn nh vo Column trn Dt.Columns.Add(Dc_Tuoi); // To ct tui. Hoc c th thm ngn gn hn:Dt.Columns.Add("HoVaTen",Type.GetType("String"));3.9 Lp DataRow Chc nng: L mt i tng qun l mt hng ca mt DataTable. Khai bo: DataRow Dr; Lu : V Dr ph thuc vo bng (DataTable) nn nDataRow Dr=new DataRow() !!!ch c to ra bi mt DataTable c sn, khng th to DataRow theo kiu:V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.80Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Truy xut cc ct () trong mt DataRow nh sau: Dr[Ch s] hoc Dr[Tn_Ct]. Trong Dr: l mt bin kiu DataRow V d : To mt bng c hai ct H tn v Tui, sau chn vo bng ny 2 bn ghi cgi tr tng ng l {"Nguyn Vn An", 30} v {"Nguyn Vn Bnh", 20}... DataTable Dt ; Dt=new DataTable(); Dt.Columns.Add (Dc_HVT); Dt.Columns.Add(Dc_Tuoi); DataRow Dr; Dr = Dt.NewRow (); // To mt hng trng Dr ["HoVaTen"] = "Nguyn Vn An"; Dr ["Tuoi"] = 30; Dt.Rows.Add (Dr); // Thm vo bng Dr = Dt.NewRow (); // To mt hng trng Dr ["HoVaTen"] = "Nguyn Vn Bnh"; Dr ["Tuoi"] = 20; Dt.Rows.Add (Dr); // Thm vo bng ..3.10 Lp DataSet Chc nng: L mt i tng cha cc DataTable. N l ni lu tr d liu tm thicho ng dng trong qu trnh x l. Lp DataSet ny nm trong System.Data. 0 1 2DataSet Object Khai bo: DataSet Ds; DataSet Ds = new DataSet(); Mt s phng thc: Mt s thuc tnh: Tables: Cha tt c cc bng cha trong Dataset.V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319 P.81Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinTables[i] hoc Tables[Tn_Bng] : Tham chiu n mt bng c th trong Dataset. V d : Xem v d mc 13.3.113.11 Lp DataAdapter Chc nng: ng vai tr cu ni / Chuyn i d liu gia Ngun d liu (DataSource)v cc i tng thao tc d liu (nh DataSet chng hn). Mt s phng thc: Fill (DataSet, Tn_Cho_DataSet): in d liu ly c vo DataSet. Update(DataSet/DataTable) : Cp nht d liu trong DataSet,DataTable ngc tr v C s d liu. Mt s thuc tnh: SelectCommand, UpdateCommand, DeleteCommand, InsertCommand: tr v hoccho php thit lp cc cu lnh SQL Chn (Select), Cp nht (Update), Delete, Insert vo C s d liu. V d:Hin th ton b bng Suppliers ra mn hnhTrang giao din DataSet demo Danh sch nh cung cp Trang Codeusing System; using System.Data; using System.Data.OleDb; public partial class Lession_12_DataSet : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { // To i tng Connection v m kt ni n CSDL OleDbConnection Conn; Conn = new OleDbConnection (); Conn.ConnectionString = "Provider=Microsoft.jet.oledb.4.0; dataV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.82Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tinsource="; Conn.ConnectionString += Server.MapPath ("../App_Data/nwind.mdb"); Conn.Open (); // To i tng Command v select ton b bng Suppliers OleDbCommand Cmd; Cmd = new OleDbCommand (); Cmd.CommandText = "Select * from Suppliers"; Cmd.Connection = Conn; OleDbDataAdapter Da; Da=new OleDbDataAdapter(); Da.SelectCommand=Cmd; DataSet DsNCC = new DataSet (); Da.Fill (DsNCC, "DS_NCC"); // Hin th trn mt bng dgrNCC.DataSource = DsNCC.Tables ["DS_NCC"]; dgrNCC.DataBind (); } }V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.83Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TinII. THC HNH1. To c s d liuTo c s d liu Access QLCB.MDB c nhng bng vi cu trc nh sau: Bng tblCanBo Bng Bng cp: tblBangCap Bng phng ban: tblPhongBan Bng trnh chuyn mn: tblChuyenMon Bng chc v: tblChucVuV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.84Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Bng ngi dng Mi quan h gia cc bng (Ch chn Cascading Update/ Delete khi to)2. Nhp d liu cho bng. y ch hng dn cch nhp mu cho bng tblUser, v bng ny cha c d liu dng Xu, s, bool, datetime. Hc vin to cc bng khc mt cch tng t. 2.1 Thit k trang giao din (Ch : Cc trang cn phi c gn vo trong h thng giao din c xy dng bi trc, v d: a vo MasterPage) Trang giao din NhapNguoiDung.aspx Nhp thng tin ngi dng .CanPhai {text-align:right; font-style:italic} V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.85Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Nhp thng tin ngi dng Tn ng nhp Mt khu Quyn hn 1 2 3 4 5 Ghi ch V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.86Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin 2.2 Vit code behind. NhapNguoiDung.aspx.csusing System; using System.Data; using System.Data.OleDb; public partial class Lession_13_NhapNguoiDung : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void cmdThem_Click (object sender, EventArgs e) { // To i tng Connection v m kt ni n CSDL OleDbConnection Conn; Conn = new OleDbConnection (); Conn.ConnectionString = "Provider=Microsoft.jet.oledb.4.0; data source="; Conn.ConnectionString += Server.MapPath ("../App_Data/QLCB.mdb"); Conn.Open (); string strSQL; string TenDN=txtUserName.Text; string MatKhau=txtPassword.Text; string GhiChu=txtGhiChu.Text; string NgayTao=DateTime.Now.Month.ToString() +"/" + DateTime.Now.Day.ToString(); NgayTao += "/" + DateTime.Now.Year.ToString(); int QuyenHan=int.Parse(ddlQuyenHan.Text); strSQL="Insert into tbluser(TenDangNhap, MatKhau, QuyenHan, NgayTao, GhiChu) "; strSQL += " values ('" + TenDN + "','" + MatKhau + "'," + QuyenHan + ",'" + NgayTao + "','" + GhiChu +"')"; // To i tng Command v select ton b bng Suppliers OleDbCommand Cmd; Cmd = new OleDbCommand (); Cmd.CommandText = strSQL; Cmd.Connection = Conn; Cmd.ExecuteNonQuery (); txtUserName.Text = ""; txtPassword.Text = ""; txtGhiChu.Text = ""; ddlQuyenHan.Text = "1"; txtUserName.Focus ();V2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.87Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin} }3. Hin th d liu trong bng ln trnh duyt3.1 Trang giao din HienThiNguoiDung.aspx Danh sch ngi dng Danh sch ngi dng 3.2 Trang code behind Trang HienThiNguoiDung.aspx.csusing System; using System.Data; using System.Data.OleDb; public partial class Lession_13_HienThi : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { // To i tng Connection v m kt ni n CSDL OleDbConnection Conn; Conn = new OleDbConnection (); Conn.ConnectionString = "Provider=Microsoft.jet.oledb.4.0; data source="; Conn.ConnectionString += Server.MapPath ("../App_Data/QLCB.mdb"); Conn.Open (); // To i tng Command v select ton b bng Suppliers OleDbCommand Cmd; Cmd = new OleDbCommand (); Cmd.CommandText = "Select * from tblUser"; Cmd.Connection = Conn; OleDbDataAdapter Da; Da = new OleDbDataAdapter (); Da.SelectCommand = Cmd; DataSet DsNCC = new DataSet (); Da.Fill (DsNCC, "DS_USer"); // Hin th trn mt bngV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.88Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton TindgrDSNS.DataSource = DsNCC.Tables ["DS_USer"]; dgrDSNS.DataBind (); } }4. Cp nht d liu bng DataSet v DataAdapter cp nht d liu vo trong CSDL, ta c th dng cu lnh SQL dng nh "UPDATE WHERE ." v thc thi bng phng thc ExecuteNonQuery ca i tng Command. Tuy nhin cn c mt cch khc cp nht na, l dng phng thc Update ca i tng DataSet v DataAdapter. M hnh dng nh sau:Cc bc cn phi thc hin khi Update bng DataAdapter: 1. To kt ni n CSDL 2. To i tng Command v t cu lnh Select cho thuc tnh CommandText. Vic t cu lnh Select y l v sau DataAdapter bit c cc trng ca bng gm nhng trng no ? 3. in (Fill) d liu vo mt DataSet. 4. Chnh sa d liu trong cc bng ca DataSet 5. To mt th hin ca CommandBuilder (OleDBCommandBuilder/ SqlCommandBuilder) 6. Gi phng thc Update ca DataAdapter cp nht thc s vo Database. V d: Sa i trng thi ng nhp (Trng TrangThai) ca tt c ngi dng trong bng tblUser thuc c s d liu QLCB.mdb thnh 1. Trang giao dinUpdatewithDataAdapter.aspx Cp nht d liu thng qua Data AdapterV2.0 http://www.aptech.utehy.vn; aptech@utehy.edu.vn; Tel: 03213-713.319P.89Ti liu kha hc lp trnh web vi ASP.NET Bin son: Trung tm Hng Yn Aptech http://08tn1d.net din n Sinh Vin Ton Tin Sa trng thi ng nhp thnh 1 Trang code behind: UpdatewithDataAdapter.aspx.cs using System; using System.Data; using System.Data.OleDb; public partial class Lession_13_UpdatewithDataAdapter : System.Web.UI.Page { protected void cmdEnableAllUser_Click (object sender, EventArgs e) { // To i tng Connection v m kt ni n CSDL OleDbConnection Conn; Conn = new OleDbConnection (); Conn.ConnectionString = "Provider=Microsoft.jet.oledb.4.0; data source="; Conn.ConnectionString += Server.MapPath ("../App_Data/QLCB.mdb"); Conn.Open (); // To i tng Command v select ton b bng tblUser OleDbCommand Cmd; Cmd = new OleDbCommand (); Cmd.CommandText = "Select * from tbluser"; Cmd.Connection = Conn; OleDbDataAdapter Da; Da = new OleDbDataAdapter (); Da.SelectCommand = Cmd; // in d liu vo DataSet DataSet Ds=new DataSet(); Da.Fill(Ds,"DSND"); // Sa d liu ca bng tblUser trong Dataset for (int i=0; i < Ds.Tables["DSND"].Rows.Count; i++) { Ds.Tables["DSND"].Rows [i]["TrangThai"] = 1; } //Cp nht tr li C s d liu OleDbCommandBuilder CmdBuild