Tải bản đầy đủ (.docx) (46 trang)

ĐỀ CƯƠNG BÀI GIẢNG LẬP TRÌNH ASP.NET (TÀI LIỆU DÙNG CHO SINH VIÊN ĐẠI HỌC CÔNG NGHỆ THÔNG TIN)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.49 MB, 46 trang )




 !"##$%
&'!(")#
*&+,-&"#.&/-&
0!1")2&/-&
33
33$

%
456+789
 !"#$!%&!'(!)
:3;<
- Kiến thức:
*"(+&,-&!./(!01((!2(+3(!4&5(+6"7(089:;<=3(>?&;<@>7ABC.>30'
;<-D7@.>A;
*?-/(!01(!E"0'0F(GH(+!'(!!I.&J&!&'KL0'I.4(+GH(+MBN>.(+/"7D
"G.;
- Kỹ năng:
*?-/(!01(!'(!!I.&J&!7.J&&'KL=&,"!O(!!P!(+
*?-/(!01(!'(!!I.3!Q(R(+DF->O(!>.(+AS>TU(+;<
- Thái độ:
(!01(KTV&D'A6"B(0WAS>TU(+DF->O(!CBNAWAX&J&!Y&!&%&;
:=><
%%?/@+89
Z3!.Q(+&"!F-(1([=9:9&0BB>0B>:7+BK\KTV&(!8"DF->O(!01(D%7
&!](KE^_#G%(+0'-!J>E(4(+GH(+CBNKX(+>1(AJ#&!`/aGH(+!PK8"!'(!
M(G.C/;9:K\!E!P(KTV&(!2(+T"KEA&`7AO(!0WAS!O(!DF->O(!!`H&Kb(
+Q(=/aGH(+!P"6"Q&J&KTV(+c99&0Bd77NeB&f^aD G2DP"=g
gDB#/BANeB&fD'A0P&0W!P!(+F-(;;;=Kh(+!U9:&i(+!j>V(!8"(+S(


(+2k&>-=l707&>-;
!Y(!(!2(+T"KEAKm=9:K\KTV&#1"!Y&!>.(+AX!U+7(G';"#(!1(=
9:0n(&o(h(K](+AX/3!m3!R((!T.GB9:0'cDn(DX(=K8"('#D'A&!.6"J
>O(!0&.GB3!m3!R(=!E!P(0'>O(!N'#&.GB3!S(+>.(+/J(+=!I(&!3!Q(R(+/aGH(+
DI&.GB;k1(&I(!Km=3!>E(3!7&'KL=G.3!S(+KTV&N1(Gp&!>TW&(1(GqNpA,/.">&B
&.GB=!I(&!08AL&KX!%&!P(;r"J>O(!^aD :./N7&33!m3!R(=;;;
s"(RA=c&>./.@+W!P"AX3t!"FDF->O(!MBN3!JAWAu0W1(+]
N7(Ks"D'9:*=1(&!Y(!!4&/7"('#D'9:;B;W9:;B=3!S(+(!2(+3!S(+&s(Ko
!v&!?(+7-!QN&J&7+c=!3CBN=A'(m&o(!j>VAI(!DF->O(!!TW(+K
TV(+>.(+6"J>O(!^_#G%(+0'-!J>E(4(+GH(+MBN;
9:;BD'3t!"FDF->O(!0'-!J>E(4(+GH(+CBNw-!Y7B>0B>B>0B>f/GBG%7
>1((8(Q(+&`7c&>./.@;Bg>7ABC.>3;
s"!=(!2(+(+TUAWK(0WDF->O(!CBNK8"NxKs"OA!E"(!2(+3t!"Fw
-!Y7DB(DB(f/GB(!Tc=l707&>-=7/&7G(+#DB!BB/;y!MBN
N>.C/B>#1"&s"AX>7(+CBN>7(+CBN/aGH(+3t!"F&DB(f/GB=MBN/B>0B>OA>7(+
CBNA'DB(#1"&s"=/7"Km+w08&!.DB(;DB((!F(36"Q>Q08ZB>0B>0'!E(!p
D1(A'(!O(!;

9:;B/aGH(+3t!"FDF->O(!w-!Y7/B>0B>!O!.'(.'(3!J&=A\DP(!w-!Y7
/B>0B>0YGHA\DP(!>.(+>7(+9:=9:;</zKTV&N1(Gp&!0'!!'(!IMBNB>0B>;
7"3!KTV&B>0B>K]&=N1(Gp&!0'!!'(!=36"Q%KX(+KTV&&!"#E(/7(+c{
l707&>-{0'>Q08&!.DB(;
,&Q&J&^aD DP(!9:=9:;BK8"KTV&!%&!P(IB>0B>0'G.Km=+]D'3t
!"FDF->O(!w-!Y7/B>0B>;
%#A5B+C/@!D7
f9:;B&!.-!|-&!?(+7D%7&!](AX>.(+&J&(+S((+2DF->O(!A'&!?(+7#1"!Y&!
/"7Dk7/&;B=l}=}=;;;
f>7(+9:;BKTV&N1(Gp&!>TW&!'(!(!2(+F-(A'B>0B>&m!E!!'(!(!7(!
&!m(+0'!P"6"Q;~"('#D'AXNTW&(!Q#0]KJ(+3E/.0W3t!"F!S(+Gp&!&`7
9:;

f9:;B!j>VAI(!AzNX!T0P(-!.(+-!?0'K7GI(+&`7;Bg>7ABC.>3=D'A0P&0W
dc=MBNB>0&B=>"#&F-&b/wG2DP"6"79;B=;;;
f9:d0'9:&m!E&•(+!.IKX(+>.(+)4(+GH(+;
f9:;B/aGH(+-!.(+&J&!DF->O(!AW.GBNB!GB;J&!&.GB>1(+=+7.GP(>1(+=Gq
K]&=Gq6"Q(D 0'NQ.>O;
fy(>?&DF->O(!+(+4(+GH(+>1(M(G.C/;
fj>V6"Q(D >I(+!J&`7&J&&.(>.D;
f%KX(+-!J/(!A\c&!.&J&B>0B>&.(>.DTb(+4(+0WZ(+D.Ik>.C/B>;
€ f>E(3!7&'KL
*y!S(+&s(D.&3=3!S(+&s(KR(+3 ;
*!.-!|-(!8"!O(!!4&&,"!O(!4(+GH(+;
fj>V6"Q(D 4(+GH(+wA4&.'(&H&
*D.N7D;7/-^&m(!8"/%3P(!b(;
*r"Q(D /B//.(>1((!8"B>0B>=3!S(+&s( 3B/;
%$?/@+89E7&FGH81IH7JKGHL
7;<:D7@.>A
k7.+hA;Bg>7ABC.>30'(!2(+&S(+&HKTV&G•(+KE^_#G%(+=-!J>E(4(+GH(+
0'Gp&!0H9:;B;

Hình 1.1: Kiến trúc .NET Platform
N;<g>7ABC.>3
‚PK8"!'(!"(+&,-&J&&!4&(R(+^_#G%(+4(+GH(+0W07>o6"Q(D 0P&^_#G%(+
0'!!'(!4(+GH(+=;<g>7ABC.>3&"(+&,-&J&DW-KTV(+D7//KE&!?(+7&m!E
+]!!'(!&J&&!4&(R(+A'KTV(+Km&"(+&,-;"#(!1(=DU31"+]&`7&!?(+7&m
KTV&ƒ!Tw(+4(+„!7#3!S(+&o(•#!"X&0'.3!Q(R(+&`7!PK8"!'(!K7(+&!I#4(+GH(+
&`7&!?(+7;
Hình 1.2: Kiến trúc .NET Framework
‚.AA.(7(+"7+B…"(AB'!'(!-!s(ƒ3(„ +27&J& -!s(3!J& >.(+;<
g>7ABC.>30W!PK8"!'(!;.AA.(7(+"7+B…"(AB…+207>o6"Q(D 0P&!
!'(!&J&4(+GH(+0N†(+;<>1(M(G.C/;

…/z!S(+Gp&!&J&DU+]Z&!Tb(+>O(!&!.M(G.C/!!'(!=KQANQ.4(+GH(+
3!S(+&!AGH(+0'/aGH(+>'(D7('(+"#1(&`7!P!(+;m&i(+3!S(+&!.-!|-&J&
DP(!ƒ(+"#!EA„KTV&!!'(!;J&&!4&(R(+('#KTV&!%&!Nw&J&!'(!-!s(N1(>.(+
…(!TD7//D.7GB>=l"/(AB&.A-DB>=7>N7+B&.DDB&.>=<^&B-.(!7(GDB>=c
A7>/!7DDB>=B&">#B(+(B=;;;
‚kX!T0P(&J&DW-KTV(+"-!Q+Q(+!‡7Zƒg>7ABC.>3„>.(+!"F(+2;<
g>7ABC.>3!OK_#D'D?&!Y&!!V-(!,;g>7ABC.>3&!Y(!D'AXF-!V-!7#!T0P(&J&DW-
KTV(+!j>V(+TUDF->O(!3!^_#G%(+4(+GH(+=0YGH(!TD'&J&DW-4(+GH(+cg0'
lg;
c&>./.@g."(G7.(D7//D'NX!T0P(A'DF->O(!01(/"7D**/aGH(+>.(+
3!l707g."(G7.(D7//D'NX!T0P(G'(!&!.&J&DF->O(!01(l707;UK_#=&m!E&.
;<g>7ABC.>3D'NX!T0P(G'(!&!.&J&DF->O(!01(;<;
f!T0P(DW-&b/wk7/BD7//N>7>#_#D'!T0P(&J&DW-&bNQ((!,=KTV&G•(+>.(+
3!DF->O(!!7#NQ(!_((!2(+(+TU^_#G%(+;<g>7ABC.>3&i(+-!QG•(+(mKE^_#
G%(+&J&DW-&7.!b(;YGH&J&DW->.(+!T0P(('#D'>(+=(B+B>=<^&B-.(=;;;
f!T0P(9;<0'dckX!T0P(('#+hA&J&DW-G•(+KE^aD G2DP";9;<
!7#!9>.(+0P&!7.J&0W&J&G2DP"!S(+!TU(+;J&DW-KTV(+dcKTV&
&"(+&,-KE^aD &J&G2DP"!B.Kp(!GI(+AWdc;J&0YGH&!.NX!T0P(('#D'
6D779G7-B>=6D.AA7(G=77B=dc…B7GB>=dcM>B>=;;;
ˆ
f!T0P(9:;<kX!T0P(&J&DW-KTV(+G•(+>.(+0P&^_#G%(+&J&4(+GH(+
MBN;9:;<3!S(+-!QD'-!1(NQ(AW&`79:;;‰(+GH(+CBN^_#G%(+N†(+
9:;<F(GH(+KTV&.'(NX3!Q(R(+&`7;<g>7ABC.>3;k1(&I(!KmD'AXƒ-!.(+
&J&!„DF->O(!AWA'c&>./.@KL&!.(mAX1(+]>,31"&.GBNB!(G;
9:;<&"(+&,-AXNX&J&B>0B>.(>.DKEDF->O(!01(Nx/%3P(0'^aD G2
DP"&`74(+GH(+(!TK7(+D'A0P&0W4(+GH(+M(G.C/;m&i(+&!.-!|-&!?(+7
&!"#E(AX4(+GH(+>TW&K_#0&!ŠKE&!I#>1(M(G.C/!'(!AX4(+GH(+MBN3!JGq
G'(+;YGH&!.&J&DW->.(+!T0P(('#D'MBN.(>.D=c.(>.D=;;;
f+.'>7&o(&m&J&DW-!T0P(3!J&(!TMBNB>0&B/0'M(G.Cg.>A;
%.M!&N!OJPJH8JH&0!&/N5QR5

y!MBN/B>0B>(!F(KTV&#1"&s"Z-!Y7&DB(=(m/zOA3AF-(KTV&#1"&s"
!S(+6"7&!"j…KTV&+w08=/7"Km=(!'(!^aD !B./bKh/7"
Hình 1.3: Quá trình xử lý tập tin ASPX
);•;);(B>(B(@.>A7.(B>0&B/
&m!EKTV&/aGH(+(!TAXMBN/B>0B>=3!V-0W9:=9:;<KE^_#G%(+
&J&4(+GH(+MBNF(GH(+&J&KEAAI(!&`7B>0B>f/GB&>-=c&.A (B(=;;;!B.AS
!O(!DB({B>0B>;&m>,(!8"-!1(NQ(=Ks"1(KTV&-!J!'(!>U>.(+NQ(B>0&B
-7&3&`7M($J&-!1(NQ(M(G.C/K\&mY&!!V-ˆ;$M(G.C/d:Y&!!V-
ˆ;ˆ$M(G.C/d:;<B>0B>Y&!!V-‹!j>V&J&Y(!(R(+G'(!&!.;<&`7
9:;<0'MBNB>0&B$M(G.C//70'M(G.C/ŒY&!!V-Œ;
);•;;'KLMBNB>0B>
€ 7'KLMBNB>0B>>1(M(G.C/{M(G.C/d::>.@B//.(7D
€ ‚kTW&);!](.(>.D:7(BD•9GG{…BA.0B->.+>7A/;
€ ‚kTW&;9GG{…BA.0BM(G.C/.A (B(/;

‚kTW&;J(!G,"0'.AH&(B>(B(@.>A7.(B>0&B/;m!E>"#&F-K(MBN/B
N†(+&J&!!-{{D.&7D!./!.L&!-{{)Œ;;;)
Hình 1.4: Cài đặt IIS trên Windows 2000/ Windows XP
N'KLMBNB>0B>>1(M(G.C/7{M(G.C/Œ
‚kTW&)!](7>{B(+/{.(>.D:7(BD
‚kTW&!](D7//&BC{!](:>.+>7A/7(G@B7">B/
‚kTW&!](">(M(G.C/@B7">B/.(.>.@@
‚kTW&•J(!G,"0'.AH&(B>(B(@.>A7.(B>0&B/{!](3KE&'KL;yEA>7
36"Q&'KLy!wKX(+>O(!G"#P(!F-Kp7&!Š!-{{D.&7D!./
Hình 1.5: Cài đặt IIS trên Windows Vista/ Windows 7
Œ
%STGN5QR5CU+&/V
);ˆ;);y!wKX(+c/"7D"G.;<
!?(+7/zNxKs"N†(+0P&D'A6"B(0WAS>TU(+-!J>E(4(+GH(+<&`7
/"7D"G.;<ˆStart / Programs / Microsoft Visual Studio 2005 / Microsoft Visual

Studio 2005
);ˆ;;I.4(+GH(+MBN
‚kTW&)!](Z!%&Kb(File / New / Website;7"Km&!]((XG"(+&H!E(!T!O(!0z/7"
Hình 1.6: Tạo ứng dụng Web
‚kTW&k5/"(+K8"3!E(
Hình 1.7: Bổ dung điều khiển
Ž
‚kTW&!F-&.GB&!./%3P(:7+B.7G(!T/7"
-"ND&-7>7D&D7//•B@7"D#/BA;MBN;;:7+B

->.B&BG0.G:7+B•.7G.NeB&/B(GB>=<0B(9>+/B
•
‘
->.B&BG0.GN(!B(•D&3.NeB&/B(GB>=<0B(9>+/B
•
(/.D".(+’(;:7>/B^.D".(+;B^$
(G.(+7’(;:7>/B^.(+7;B^$
(!7(!B(’/.D".(+‚G.(+7$
^!7(!B(;B^’!7(!B(;.>(+$
‘

:W<X
);Tb(+r"7(+!P(=Lập Trình Web Dùng ASP.NET Và C#,dk!'(!-!c
;+"#q(:!Tb(+7(=Giáo trình tin học và bài tập ASP 3.0, ASP NET=dkd‹
>:Y<Z[[=><\]^<
k')./J(!/%+(+0'3!J&(!7"+279:;<0'M(G.C/g.>A>.(+&,">?&;<
g>7ABC.>3“
k''KL0'&,"!O(!&!.KE&!I#KTV&4(+GH(+9:;<
k'!3AX4(+GH(+Y(!.J(Kb(+Q(-!|-&X(+=>Z=(!_(=&!7N†(+9:;<;
[

#
JH8JHG&HGE
[ !"#‹$!%&!'(!
:3;<
- Kiến thức:
*"(+&,-&!./(!01((!2(+3(!4&08&J&K8"3!E(&!"”(0'K8"3!E(3EA>7G2
DP"KTV&/aGH(+>.(+DF->O(!9:;<
*?-/(!01(!E"0'0F(GH(+!'(!!I.&J&!/aGH(+0'4(+GH(+&J&K8"3!E(>.(+
6"J>O(!DF->O(!CBN;
- Kỹ năng:
*?-/(!01(!'(!!I.&J&!7.J&0'KL&>T(+&`7Z(+D.IK8"3!E(;
*?-/(!01(!'(!!I.3!Q(R(+DF->O(!>.(+AS>TU(+;<
- Thái độ:
(!01(&m!JKXY&!&%&0'/J(+I.>.(+0P&0F(GH(+=D%7&!](0'!3>.(+
6"J>O(!/aGH(+&J&K8"3!E(;
:=><
#%/9+L/@!+_`&7Q7HQG&HGE:
!2(+D G.(1(/aGH(+K8"3!E(&!"”(9:;<7(G7>GMBN.(>.D/
fb(+Q(=Tb(+%(!T&J&K8"3!E(&!"”(>1(M(G.C@.>A;
fh(+(!,J&K8"3!E(MBNB>0B>&m&J&!"X&Y(!+(+(!7"=G.Km&!?(+/z+?-
&!?(+7GqOA!E"0'/aGH(+;
fP"6"QJ&K8"3!E(MBNB>0B>%KX(+-!J/(!>7&J&7+c!B.Z(+D.I
k>.C/B>;
Hình 2.1: Các điều khiển chuẩn ASP.NET
)
J&!"X&Y(!&!"(+&`7&J&K8"3!E(&!"”(&`79:;<
Bảng 2.1: Các thuộc tính chung của các điều khiển chuẩn
+a!&' b/@+ c5d7
 >(+ r"#Kp(!1(&`7K8"3!E(0'G"#(!,;
9&&B//yB# >(+

r"Kp(!3 %KEG&!"#E((!7(!K(K8"3!E(f3 %
^aD -!YA(m(+;
9>N"B/ 9>N"B.DDB&.( F-!V-&J&!"X&Y(!&`7K8"3!E(c
k7&3.D.> .D.> r"Kp(!A'"(8(&`7K8"3!E(;
k.>GB>.D.> .D.> r"Kp(!A'"KTU(+08(&`7K8"3!E(;
k.>GB>#DB k.>GB>#DB r"Kp(!3E"KTU(+08(&`7K8"3!E(;
k.>GB>MG! ( r"Kp(!KX>X(+&`7KTU(+08(;
//D7// >(+ r"Kp(!!O(!!4&!E(!p&`7K8"3!E(6"71(;
<(7NDBG k DB7(
r"Kp(!K8"3!E(&mKTV&!E(!p!7#3!S(+;J>p
AL&Kp(!&`7!"X&Y(!('#D'>"B•KTV&-!|-!E(!p;
g.( g.((@. r"Kp(!g.(!E(!p&!.K8"3!E(;
g.>B.D.> .D.> r"Kp(!A'"&!2!E(!p>1(K8"3!E(;
;););8"3!E(7NBD
7NBD!TU(+KTV&/aGH(+KE!E(!p0'>O(!N'#(XG"(+>1(>7(+CBN;XG"(+
KTV&!E(!p>.(+D7NBDKTV&^J&Kp(!!S(+6"7!"X&Y(!B^;!"X&Y(!B^&m!E(!F(
0'!E(!p(XG"(+0W&J&7+c;
YGH
DND9;B^’–_#D'&!"j0R(NQ(!TU(+–$
DNDk;B^’–—k˜o(K_#D'&!"j0R(NQ(KTV&(KFA—{k˜–$
;);;8"3!E(B^k.^
B^k.^D'K8"3!E(KTV&G•(+KE(!F-0'!E(!pG2DP";B^k.^!TU(+KTV&/a
GH(+(!8"0W&J&4(+GH(+>1(C(G.C/@.>A;
J&!"X&Y(!&`7K8"3!E((!T/7"
fB^XG"(+&!47>.(+B^N.^
fB^c.GBr"Kp(!&!4&(R(+&`7B^N.^=&m+J>p(!T/7"
*(+DB(BE(!p0'(!F-DP"AXGo(+0R(NQ(;
*c"D(BE(!p0'(!F-DP"(!8"Go(+0R(NQ(
*:7//C.>GE(!pG,"‚!7#&!.&J&3 %&m>.(+B^N.^;
f….C/>.(+>TU(+!V-!"X&Y(!B^c.GB’c"D(B=!"X&Y(!….C//z6"Kp(!/

Go(+0R(NQ(KTV&!E(!p;
fc7^DB(+!r"Kp(!/3 %K7KTV&(!F-0'.&!.B^k.^;
fM>7-!"X&Y(!('#6"Kp(!0P&!E(!p&`70R(NQ(&mKTV&-!|-%KX(+^"(+Go(+3!
3Y&!!TW&(+7(+&`7&`7K8"3!E(3!S(+K`KE!E(!pGo(+(XG"(+0R(NQ(;J>pAL&
))
Kp(!&`7!"X&Y(!('#D'>"Bf%KX(+^"(+Go(+;
;);;8"3!E(A7+B
8"3!E(('#KTV&/aGH(+KE!E(!p!O(!Q(!D1(>7(+CBN;
J&!"X&Y(!&`7K8"3!E((!T/7"
fA7+B…TU(+Gn(K(F-(!O(!Q(!&s(!E(!p;
f9DB>(7BB^!"j0R(NQ(/z!E(!p3!F-(KTV&!DF->.(+!"X&Y(!A7+B…
3!S(+h(I;
fA7+B9D+(p>Y!E(!p+27!O(!0'(XG"(+0R(NQ(;
;);•;8"3!E(k".(=A7+Bk".(=(3k".(
fJ&K8"3!E(k".(=A7+Bk".(=(3k".(AL&Kp(!K8"D'&J&(?"NAk".(=Aj
3!KTV&(!,(0'./z:./k7&308B>0B>;
fy!&!?(+7!DF-+J>!"X&Y(!.AA7(G7AB&!.&J&K8"3!E(('#=&!?(+7+]
1(&!"(+&!.&J&K8"3!E(('#D'.AA7(Gk".(;
J&!"X&Y(!&!"(+&`7&J&k".(=A7+Bk".(0'(3k".((!T/7"
Bảng 2.2: Thuộc tính chung của các Button, ImageButton và LinkButton
+a!&' c5d7
B^ !"j0R(NQ(!E(!p>1(0R(NQ(;
.AA7(G7AB 1(DP(!=KTV&/aGH(+>.(+/%3P(.AA7(G;
f+.'(!2(+!"X&Y(!>1(=K8"3!E(A7+Bk".(&o(&m&J&!"X&Y(!A7+B…=
A7+B9D+(0'9DB>(7BB^(!TK8"3!E(A7+B;
Hình 2.2: Button, ImageButton và LinkButton
YGHI.CBN/B(!.7(+hA&J&K8"3!E(/7"7NBD=B^N.^0'k".(
Hình 2.3: Thi hành ứng dụng Tinhtoan
daD /%3P((!T/7"
->.B&BG0.GN(!B(•&D&3.NeB&/B(GB>=<0B(9>+/B


)
(/.D".(+’(;:7>/B^.D".(+;B^$
(G.(+7’(;:7>/B^.(+7;B^$
(!7(!B(’/.D".(+‚G.(+7$
^!7(!B(;B^’!7(!B(;.>(+$

;);ˆ;8"3!E(#-B>(3
8"3!E(('#KTV&/aGH(+KEI.>7&J&D1(3/1"0R(NQ(;
J&!"X&Y(!&`7K8"3!E(#-B>(3(!T/7"
fA7+B…r"Kp(!!O(!!E(!p>1(K8"3!E(;
f B^!"j0R(NQ(/zKTV&!E(!p>1(K8"3!E(;>.(+>TU(+!V-&Q!"X&Y(!
A7+B…0'B^KTV&!DF-=!"X&Y(!A7+B…KTV&T"1(=!"X&Y(!B^/zKTV&
!E(!p(!T D-;
f70+7B>DTU(+Gn(&s(D1(3K(;
f7>+BdJ&Kp(!&a7/5/z!E(!p&!.AD1(3
*•ND7(3E(!p>7(+D1(3wAX&a7/5AW;
*•/BD@E(!p>7(+D1(3I&!Y(!&a7/5&!47D1(3Km;
*•-7>B(E(!p>7(+D1(3w@>7AB&!7;
YGH
!-D9:B;B^’–>7(+&!`9:;B–$
 !-D9:B;A7+B>D’–™{:&">B/{D.+.7/-(B;e-+–$
 !-D9:B;70+7B>D’–!-{{CCC;7/-;(B–$
 !-D9:B;7>+B’–•ND7(3–$
y6"Q!E(!p>1(>7(+MBN(!T/7"
Hình 2.4: Liên kết siêu văn bản
;);‹;8"3!E(/k.^0'> G.C(/
/k.^0'> G.C(/D'K8"3!E(!E(!pG7(!/J&!D%7&!](A'(+TUG•(+&m
!E&!](AX!.L&(!8"&!ŠG'(!&!./k.^;J&AH&D%7&!](&m!EKTV&!1A0'.G7(!
/J&!!S(+6"7DP(!!.L&w&a7/5!"X&Y(!:> B>#M(G.C/;

J&!"X&Y(!&`7/k.^0'> G.C(/
f9".:./k7&3!"X&Y(!('#6"Kp(!K8"3!E(&mKTV&-!|-%KX(+:./k7&308B>0B>
3!&!Š/&`7AH&&!](Np!7#K5;J>pAL&Kp(!&`7!"X&Y(!('#D'g7D/Bf3!S(+%KX(+
:./N7&3;
fBA/_#D'F-!V-&!47&J&AH&&!](&`7K8"3!E(;7&m!E!1A0'.AH&&!](0'.
!UKEA!3!S(+6"7&a7/5/BA.DDB&.(<G.>=!.L&!S(+6"7DP(!;
f….C/r"Kp(!&!8"&7.&`7/k.^!B./Go(+!E(!p;
f  BDB&.(c.GB  !"X&  Y(!  ('#  ^J&  Kp(!  &J&!  !4&  &!](  &J&  AH&  >.(+  /k.^;
)
BDB&.(c.GB&!ŠKTV&-!|-!7#K5>.(+6"J>O(!!3=0'.D?&!%&!&!Tb(+>O(!
!"X&Y(!('#&!ŠK]&;
*(+DB!ŠKTV&&!](AXAH&&m>.(+G7(!/J&!AL&Kp(!;
*c"D-DB!.-!|-&!]((!8"D%7&!](;
‚OA!E"08F-!V-BA/
f9GG!1AAH&AW0'.&"G7(!/J&!=/aGH(+-!Tb(+!4&BA/;9GG
BA/;9GG—>(+˜$
f(/B>!1AAH&AW0'.G7(!/J&!IAX0p>Y('.Km=/aGH(+-!Tb(+!4&BA/;(/B>
BA/;(/B>—(GB^˜=—>(+˜$
f."(>Q08/AH&BA/&m>.(+G7(!/J&!
BA/;."($
f…BA.0Bd.JKTV(+BA!P(I>73!vG7(!/J&!=>.(+>TU(+!V-&J&KTV(+BAD'
3E"&!"j=7>"#8(0'.AX&!"jKE^.J;"&m(!8"+J>p+(+(!7">.(+G7(!/J&!!O
&!Š&mAH&&!](Ks"1(Np^.J;
BA/;…BA.0B—!".˜$
f…BA.0B9d.JAXBAI0p>Y(GB^>73!vG7(!/J&!
BA/;…BA.0B9—(GB^˜$
fDB7>:!Tb(+!4&DB7>&`7F-!V-BA/KTV&G•(+KE^.J,&Q(!2(+BA&m>.(+G7(!
/J&!;
BA/;DB7>$
‚daD AH&&!](J&&!Š//7">.(+3!^aD AH&&!](/z+?-&!?(+7^J&Kp(!&!Š/=+J

>p&`7AH&K7(+KTV&&!](;>.(+>TU(+!V-K8"3!E(&!.-!|-&!]((!8"=7G"#P6"7&J&
BA>.(+F-!V-BA/;
faGH(+!"X&Y(!BDB&BG&`7KTV(+BA/š›KE3EA>7AH&!4&mKTV&&!](!7#
3!S(+;
fBDB&BG(GB^!.N&!Š/&`7AH&KTV&&!](;>.(+>TU(+!V-&!]((!8"AH&!O
BDB&BG(GB^/z>Q08&!Š/AH&&!](Ks"1(;
fBDB&BGBA!.NAH&KTV&&!](;>.(+>TU(+!V-&!]((!8"AH&=BDB&BGBA/z>Q
08AH&&!](Ks"1(;
fBDB&BG7D"B!.N+J>p&`7AH&KTV&&!](;>.(+>TU(+!V-&!]((!8"AH&=
BDB&BG7D"B/z>Q08+J>pAH&&!](Ks"1(;
YGHI.AXMBN/B"Dp&!+hA)/k.^=7NBD=)k".(>.(+KmK8"3!E(/k.^
D'K8"3!E(G7(!/J&!D/y!"•GDBDB&.(c.G’c"D-DB$….C/’•
y!!3
)•
Hình 2.5: Thiết kế Website du lịch
daD /%3P((!T/7"
->.B&BG0.G:7+B•.7G.NeB&/B(GB>=<0B(9>+/B•
 @œ/:./k7&3•
D/7G7(!;BA/;9GG–p(!I.(+–$D/7G7(!;BA/;9GG–:!7(
!fci|–$D/7G7(!;BA/;9GG–!7>7(+–$
D/7G7(!;BA/;9GG–'I–$D/7G7(!;BA/;9GG–:!?r"&–$
D/7G7(!;BA/;9GG–"•X9(–$
((’D/7G7(!;BA/;."($
DN.;B^’(;.>(+$
‘

->.B&BG0.GN!.(•D&3.NeB&/B(GB>=<0B(9>+/B•
DN7G7(!;B^’––$
@.>(’$—’D/7G7(!;BA/;."(f)$**
•

 @D/7G7(!;BA/š›;BDB&BG
DN7G7(!;B^*’–—D˜–*D/7G7(!;BA/š›;7D"B$


y!!!'(!(!T/7"
Hình 2.6: Kết quả thực thi Website Du lịch
;);Œ;8"3!E(!B&3k.^0'…7G.k".(
f!B&3BG!.N>I(+!J&`7AH&&!](f&mKTV&&!](!7#3!S(+;
fB^9D+(r"Kp(!0p>Y!E(!p&`7K8"3!E(/.0W&!"j0R(NQ(;
f9".:./k7&3!"X&Y(!('#6"Kp(!K8"3!E(&mKTV&-!|-%KX(+:./k7&308B>0B>
3!&J&AH&&!](&`7K8"3!E(Np!7#K5;J>pAL&Kp(!&`7!"X&Y(!('#D'g7D/Bf3!S(+

%KX(+:./N7&3;
f>."-7AB…7G.k".(1((!mA;!"X&Y(!('#KTV&/aGH(+KE(!mA&J&K8"3!E(
…7G.k".(DI!'(!AX(!mA;
YGH!mA&J&…7G.k".(WY(!=!"(!F-=!mA!B&3N.^+.I(+2;
Hình 2.7: Ví dụ về CheckBox và RadioButton
‚8"3!E(!B&3k.^/0'…7G.k".(/7K8"3!E(('#KTV&G•(+KEI.>7AX
(!mA&J&!B&3k.^{…7G.k".(;.K_#D'K8"3!E(G7(!/J&!(1((m&i(+&m!"X&Y(!
BA/&!47F-!V-&J&AH&&!]((!T/k.^{> .C(/;J&!7.J&>1(F-!V-BA/=
^aD AH&&!](&i(+Tb(+%(!T/k.^{> .C(/;
J&!"X&Y(!
f…B-B7.D"A(/r"#Kp(!/&X!E(!p;
f…B-B7>B&.(r"#Kp(!!O(!!4&!E(!pB>&7D•!B.&!8"G]&$.>•.(7D•!B.
&!8"(+7(+;
f9".:./k7&3!"X&Y(!('#6"#Kp(!K8"3!E(&mKTV&-!|-%KX(+:./k7&308B>0B>
3!&J&AH&&!](&`7K8"3!E(Np!7#K5;J>pAL&Kp(!&`7!"X&Y(!('#D'g7D/Bf3!S(+
%KX(+:./N7&3;
Y  GH  k5  /"(+  !1A  0'.  MBN/B  "D&!  )  >7(+  !.(+(&7(!7(  +hA  )  B^N.^=  
…7G.k".(  +W  Y(!=    !B&3N.^  (+.I  (+2=    …7G.k".(  !"  (!F-=    D7NBD=  )

…7G.k".(/>O(!KX=)k".(R(+3 ;
Hình 2.8: Ví dụ về RadioButtonList và CheckBoxList
##/9+L/@L/@&H7QAE/e+
>.(+-!s(('#&!?(+7/zOA!E"08&J&K8"3!E(KTV&G•(+KE3EA>7G2DP";
cj3!:./k7&308B>0B>=>7(+MBND"S(3EA>7Y(!!V-DPG2DP"("&m#1"&s"3!
!3;"G2DP"3!S(+!V-DPNv>(+=0-!IAA8(+J>p=AF3!”"(!F-DI3!S(+
)‹
K?(+;;;=>7(+CBN/z3!S(+!E:./k7&308B>0B>;
Hình 2.9: Sơ đồ xử lý kiểm tra dữ liệu nhập tại Client và Server
7"K_#D'!"X&Y(!&!"(+&`7&J&K8"3!E(7DG7.(.(>.D
Bảng 2.3: Các thuộc tính chung của các điều khiển Validation Control
!"X&Y(! ž(+!‡7
.(>.D.7DG7B 1(K8"3!E(&s(3EA>7;_#D'!"X&Y(!A'&!?(+7-!Q
^J&Kp(!3!/aGH(+7DG7.(.(>.D;
B^ !"j!S(+NJ.^",!P(3!&mDj;
<>>.>cB//7+B !"j!S(+NJ.^",!P(>.(+K8"3!E(7DG7.("AA7>#;
J>p('#/zKTV&!E(!pI0p>Y&`7K8"3!E(("&!?(+7
3!S(++J(+J>p&!.!"X&Y(!B^;
/-D7# r"#Kp(!!O(!!4&K8"3!E(
f.(By!S(+!E(!p!S(+NJ.Dj0n(&m3EA>7G2DP";
f7&>.(+>TU(+!V-3!S(+&m0-!IAG2DP"=K8"3!E(
3!S(+&m!E(!p(!T(+0n(&!A0p>Y(!T>.(+D?&!3;
f#(7A&>.(+>TU(+!V-3!S(+&m0-!IAG2DP"=K8"
3!E(3!S(+&!AGH(+0p>Y>1(A'(!O(!;
<(7NDBDB(&>- m&!.-!|-!%&!P(3EA>7w-!Y7DB(!7#3!S(+;J>p
AL&Kp(!D'>"B•m3EA>7;
;;);8"3!E(…B6">BGgBDG7DG7.>
8"3!E(('#KTV&G•(+KE3EA>7+J>p>.(+K8"3!E(-!QKTV&(!F-;!?(+7
/aGH(+K8"3!E(('#KE3EA>7>'(+N"X&G2DP"3!J&>j(+NxN"X&(!F-;
!"X&Y(!/aGH(+>.(+K8"3!E(('#D'(7D7D"B•J>p3!wKX(+;J>p

&!?(+7(!F-0'.-!Q3!J&0W+J>p&`7!"X&Y(!('#;J>pAL&Kp(!&`7!"X&Y(!('#D'
&!"j>j(+;

;;;8"3!E(.A-7>B7DG7.>
8"3!E(('#KTV&G•(+KE/./J(!+J>p&`7AXK8"3!E(0W+J>p&`7AXK8"
3!E(3!J&!.L&AX+J>pKTV&^J&Kp(!>TW&;
!S(+6"7!"X&Y(!-B>7.>=&!?(+7&m!E!%&!P(&J&-!|-/./J(!(!T’=—˜=˜=
˜’=—=—’!.L&G•(+KE3EA>73E"G2DP"77#-B!B&3;
aGH(+K8"3!E(('#KE3EA>7>'(+N"X&A8(+J>p=3E"G2DP"=D1(!"X&Y(!;
B+*">.(+>TU(+!V-3!S(+(!F-G2DP"=K8"3!E(/z3!S(+!%&!P(3EA>70-!IA;
J&!"X&Y(!&`7K8"3!E(
f .(>.D..A-7>B1(K8"3!E(&s(/./J(!+J>p;"&!](+J>p&`7!"X&Y(!
-B>7.>’77#-B!B&3!O3!S(+&s(-!Q^J&Kp(!+J>p&!.!"X&Y(!('#;
f  -B>7.>  r"  Kp(!  -!|-  /.  /J(!=  3EA  >7  3E"  G2  DP"  ’=  —˜=  ˜=  ˜’=  —=  —’  !7#
77#-B!B&3;
f #-B r"# Kp(!  3E"  G2 DP"  KE  3EA >7  !.L&  /.  /J(!  >(+=  (B+B>=  ."NDB=  7B=
">>B(&#;
f7D"B..A-7>BJ>p&s(/./J(!;>.(+>TU(+!V-&!?(+7^J&Kp(!+J>p&`7&Q
!"X&Y(!.(>.D..A-7>B0'7D"B..A-7>B!O+J>p&`7K8"3!E(KTV&6"Kp(!Nw
!"X&Y(!.(>.D..A-7>BKTV&T"1(G•(+KE3EA>7;
;;;8"3!E(…7(+B7DG7.>
8"3!E(('#KTV&/aGH(+KE3EA>7+J>p>.(+K8"3!E(-!Q(†A>.(+K.I(
šc(fc7^›=G.0F#/aGH(+K8"3!E(('#KE3EA>7>'(+N"X&A8(+J>p&`7G2DP";
B+*">.(+>TU(+!V-3!S(+(!F-G2DP"=K8"3!E(/z3!S(+!%&!P(3EA>70-!IA;
J&!"X&Y(!&`7K8"3!E(
fc(A"A7D"BJ>p(!v(!,
fc7^A"A7D"BJ>pDW((!,
f#-BdJ&Kp(!3E"KE3EA>7G2DP";m!E!%&!P(3EA>7>1(&J&3E"G2DP"/7"
>(+=(B+B>=."NDB=7B=">>B(&#;
;;•;8"3!E(…B+"D7><^->B//.(7DG7.>

8"3!E(('#KTV&/aGH(+KE3EA>7+J>p&`7K8"3!E(-!Q!B.An"KTV&6"#
Kp(!>TW&Kp7&!ŠBA7D=/KP(!.I=A\0•(+=/&!4(+A(!!T;;;
B+*">.(+>TU(+!V-3!S(+(!F-G2DP"=K8"3!E(/z3!S(+!%&!P(3EA>70-!IA;
!"X&Y(!&`7K8"3!E(('#D'7DG7.(<^->B//.(•r"#Kp(!An"3EA>7G2DP";

Hình 2.10: Hộp thoại Regular Expression
;;ˆ;8"3!E("/.A7DG7.>
8"3!E(('#&!.-!|-&!?(+7%0!'A^aD 3EA>7Dj;
%3P(B>0B>7DG7B•L&J&^aD 3EA>7G2DP">.(+/%3P(('#0'0P&3EA
>7KTV&!%&!P(wB>0B>;
;;‹;8"3!E(7DG7.("AA7>#
8"3!E(('#KTV&G•(+KE!E(!p>7NQ(+Djf,&Q&J&Dj!P(&m>1(>7(+MBN;
"  K8" 3!E(  ('. &m  G2 DP" 3!S(+  !V- DP=  &!"j  !S(+  NJ.  Dj f  +J >p !"X&  Y(!
<>>.>cB//7+B&`77DG7.(.(>.D/zKTV&!E(!p;"+J>p&`7!"X&Y(!<>>.>cB//7+B
3!S(+KTV&^J&Kp(!=!S(+NJ.DjKm/z3!S(+KTV&^",!P(>.(+NQ(+Dj;
J&!"X&Y(!&`7K8"3!E(
fB7GB>B^o(+1"K8&`7!S(+NJ.Dj;
f!.CcB//7+Bk.^r"Kp(!NQ(+!S(+NJ.Dj&mKTV&-!|-!E(!p(!T&a7/5cB//7+Bk.^
!7#3!S(+;J>pAL&Kp(!&`7!"X&Y(!('#D'g7D/Bf3!S(+!E(!p;
f!.C"AA7>#r"Kp(!NQ(+!S(+NJ.Dj&mKTV&-!|-!E(!p!7#3!S(+;J>pAL&Kp(!
&`7!"X&Y(!('#D'>"BfKTV&-!|-!E(!p;
YGHI.AXCBN/BKR(+3 !S(+(3!J&!!'(+/aGH(+&J&K8"3!E(3EA>7G2DP"
(!T/7"
)[
Hình 2.11: Website đăng ký thông tin khách hàng
:W<X
);Tb(+r"7(+!P(=Lập Trình Web Dùng ASP.NET Và C#,dk!'(!-!c
;+"#q(:!Tb(+7(=Giáo trình tin học và bài tập ASP 3.0, ASP NET=dkd‹
>:Y<Z[[=><\]^<
k')!%&!'(!DI,&Q&J&0YGH08MBNB>0B>.(>.D/K\KTV&!]&;m!E0DIN'0W

(XG"(+Tb(+KTb(+&J&0YGHKE(xA02(+N'!]&;
k'aGH(+&J&K8"3!E(K\!]&KE!3A.G"DB6"Q(D /b#"D Dp&!/(!01(=/7"Km
(>7(XG"(+0Z7(!F-;
k'aGH(+&J&K8"3!E(3EA>7G2DP"KE3EA>7&J&G2DP"0Z7(!F->.(+k';
k'•aGH(+&J&K8"3!E(MBNB>0B>.(>.D/KE(!F-0'Y(!KEA>"(+NO(!AX!]&3Ÿ
>.(+(RA!]&;y6"QKTV&KT7>7/7"3!!%&!P(Y(!.J(;

$
M!C/9+L/@E/VL-&QAE/e+
[ !"#‹$!%&!'(!
:3;<
- Kiến thức:
*"(+&,-&!./(!01((!2(+3(!4&08&J&K8"3!E(D1(3G2DP">GBC=
77/=…B-B7B>=g.>ABC0'B7DBC;
*?-/(!01(!E"0'0F(GH(+!'(!!I.&J&!/aGH(+&J&K8"3!E(>GBC=77/=
…B-B7B>=g.>ABC0'B7DBC3!3(0W&b/wG2DP"
- Kỹ năng:
*?-/(!01(!'(!!I.&J&!7.J&0'KL&>T(+&`7Z(+D.IK8"3!E(;
*?-/(!01(!'(!!I.&J&6"#>O(!3!3(+27&J&K8"3!E(D1(3G2DP"0W&b
/wG2DP";
- Thái độ:
(!01(&m!JKXY&!&%&0'/J(+I.>.(+0P&0F(GH(+=D%7&!](0'!3>.(+
6"J>O(!/aGH(+&J&K8"3!E(D1(3G2DP";
:=><
$%/9+L/@H/Q]/JK
>GBC&mDzD'AXK8"3!E(>O(!Gq(G2DP"6"7(>](+(!,&`79:;<;m
&!.-!|-+x(0'!E(!pG2DP"wGI(+NQ(+=>.(+KmAj!'(+D'AXNQ(+!=Aj&X4(+0W
AX>TU(+G2DP";+.'0P&!E(!p=>GBC&o(&m>,(!8"Y(!(R(+3!J&A'>TW&K_#
(+TU7-!Q0>,(!8"Go(+&.GBAW&mKTV&=!YGHp(!GI(+=-!_(>7(+=/x-^-=/a7
K5=^m7G2DP";

>GBC  &m  !E  +x(  3 G2 DP" 0W &J&  (+"h(  (!T  77…B7GB>=  6D77.">&B=
NeB&77.">&B!7#N,3Ÿ(+"h(('.&m&'KL#/BA;.DDB&.(/<("AB>7NDB;
;););I.>GBC
!](&S(+&H>GBC>.(+!X-!.I&J&!7(!&S(+&H/7"Km3|.!Q>7A'(!O(!
!3;
Hình 3.1: Tạo GridView
;);;p(!GI(+%KX(+
!%&!P(&!]((!2(+An"Kp(!GI(+&m/ (083!"(+08(=A'"(8(N†(+&J&!&!](
)
9".g.>A7Z3!"(+77>G7/3;
Hình 3.2: Định dạng tự động GridView
;);;y((+"h(G2DP"
!%&!P(3((+"h(G2DP"0W&b/wG2DP"c9&&B//0'rB>0B>;>.(+&a7
/577>G7/3IAH&! /B77.">&B!%&!P(&!](BC77.">&B=wK_#&!?(+7
&m!E&!](D%7KE3(G2DP"0Wc9&&B//!7#rB>0B>N†(+&J&!&!](9&&B//
77N7/B!.L&77N7/B;
Hình 3.3: Kết nối cơ sở dữ liệu SQL Server 2005

;);•;!1A&X
f>.(+&a7/5>GBC7/3&!](9GGBC.D"A(
f!](D.I>TU(+&s(I.k."(GgBDG
fy!7NJ.1"K8&XB7GB>B^
f!ŠKp(!1(>TU(+G2DP"77gBDG
Hình 3.4: Thêm cột trong GridView
;);ˆ;P"&!Š(!=I.AW&J&&X
f>.(+&a7/5>GBC7/3&!](<G.D"A(/
f907D7NDBgBDG/!](D.I>TU(+D1(3G2DP";
*k."(GgBDGX&mD1(30W(+"h(G2DP"GI(+B^N.^;
*!B&3N.^gBDGX&mD1(30W(+"h(G2DP"GI(+!B&3N.^;
*#-B>D(3gBDGX&mD1(3G2DP"GI(+D1(3;

*k".(gBDGX&mD1(3GI(+(?DP(!;
*.AA7(GgBDGXGI(+(?DP(!KTV&!3/ (;8"3!E(>GBC&"(+&,-&!.
&!?(+7N7D.I&XGI(+('#
• BDB&?&!](Go(+G2DP";
• <G=7(&BD=-G7BJ&(?DP(!!j>V&!4&(R(+&F-(!FG2DP">%&->1(DTW;
• BDBB?^.JGo(+G2DP";
*BA-D7BgBDGXG.(+TUG•(+%!3;_#D'D.I&X&m3!Q(R(+D'A0P&3!JD(!
!.I;
fk."G.D"A(-> B>B/r"#Kp(!!S(+(&!&!.&J&&X;
f.(0B>!/gBDG(.7 BA-D7B.D"A( !"#E(&X!P(!'(!!'(!&XBA-D7B
.D"A(;

Hình 3.5: Hiệu chỉnh, tạo mới các cột
$#/9+L/@>7&7/&
Tb(+%(!TK8"3!E(>G0BC=K8"3!E(77/KTV&/aGH(+KE!E(!pG2DP";
"#(!1(=K0W77/&!?(+7-!Q%!3!O(!!4&!E(!pG2DP"+(+(!T
BA-D7B.D"A(&`7>GBC;
Hình 3.6: Hiển thị dữ liệu trong DataList
J&!"X&Y(!&`7K8"3!E(77/
f…B-B7>B&.(r"#Kp(!!TW(+!E(!pG2DP".>•.(7D•B>&7D;
f…B-B7.D"A(/r"#Kp(!/&X!E(!p&`777/;
!3!O(!!4&!E(!p&!.77/&i(+Tb(+%(!T!3&!.&XBA-D7B
•
.D"A(&`7>GBC;
Hình 3.7: Chọn chức năng thiết kế cho DataList
YGHE(!p!S(+(/J&!/aGH(+K8"3!E(77/(!T/7"
Hình 3.8: Thiết kế sử dụng DataList
$$/9+L/@JfJ7&JH
Tb(+%(!T!7K8"3!E(>GBC0'77/=K8"3!E(…B-B7B>&i(+KTV&/a
GH(+KE!E(!pG2DP";"#(!1(=KE!E(!pG2DP"&!?(+7-!Q%!3!O(!!4&!E(

!p!S(+6"7&J&7+c;
8"3!E(…B-B7B>&m&J&7+c(!T/7"
f —B7GB>BA-D7B˜—{B7GB>BA-D7B˜"Ÿ&!](r"#Kp(!!O(!!4&!E(!p&!.1"
K8&!Š^",!P()Ds(=-!Y7>1(&`7K8"3!E(;
f —BABA-D7B˜—{BABA-D7B˜kxN"X&r"#Kp(!!O(!!4&!E(!p&!.&J&AH&
G2DP">.(+K8"3!E(;
f —9DB>(7(+BABA-D7B˜—{9DB>(7(+BABA-D7B˜"Ÿ&!](r"#Kp(!!O(!!4&
!E(!p&!.&J&AH&G2DP">.(+K8"3!E(;XG"(+KTV&6"#Kp(!>.(+&L-7+('#
/z!E(!p^B(3z0W&J&(XG"(+>.(+&L-7+—BABA-D7B˜—{BABA-D7B˜;
f —B-7>7.>BA-D7B˜—{B-7>7.>BA-D7B˜"Ÿ&!](r"#Kp(!!O(!!4&!E(!p
+27&J&Go(+G2DP";
f —g B>BA-D7B˜—{g B>BA-D7B˜"Ÿ&!](r"#Kp(!!O(!!4&!E(!p&!.1"
K8GTW&!Š^",!P()Ds(=-!Y7GTW&•(+&`7K8"3!E(;
ˆ

×