Lp trình và Thit k Web 2
Bà
i
2
Bà
i
2
GiiGii
thiuthiu
ASPASP
.NET.NET
GiiGii
thiuthiu
ASP
ASP
.NET.NET
Ths
Trn
Th
Bích
Hnh
Ths
.
Trn
Th
Bích
Hnh
Khoa CNTT Khoa CNTT –– H.KHTNH.KHTN
Cutrúcca 1 WebForm
© 2009 Khoa CNTT - HKHTN
2
Lp trình và Thitk Web 2 – Bài 2: Giithiu ASP .NET
NidNid
Ni
d
ung
Ni
d
ung
Gii
thiu
v
ASP .NET
Gii
thiu
v
ASP
.NET
Giithiuv .NET Framework
Các thành ph
ncamt ng dng
A
phép
xây
dng
các
ng
dng
–
Công
ngh
ca
Microsoft
cho
phép
xây
dng
các
ng
dng
web đng
–
Da
trên
nn
tng
NET Framework
Da
trên
nn
tng
.
scripting
Công
ngh
Server
side
scripting
Tđng thông dch
Cho phép tocácng dng web đngin, nhanh chóng
và d dàng
To trang web có tích hp ni dung đng
© 2009 Khoa CNTT - HKHTN
5
LptrìnhvàThitk Web 2 – Bài 2: Giithiu ASP .NET
Kh tKh t
điđi
ASPASP
Kh
uy
tKh
uy
t
đi
m
đi
mc
ac
a
Tái
d
d
ké
Tái
s
d
ng co
d
e
ké
m
© 2009 Khoa CNTT - HKHTN
6
Lp trình và Thitk Web 2 – Bài 2: Giithiu ASP .NET
Cá đi ibt ASP NETCá đi ibt ASP NET
Cá
c
đi
m n
i
bt
c
a
ASP
ng
:
C#
,
VB.NET
,
J#
Biên dch trc các trang, giúp làm tng tc đ thchin
A
SP code đclp vi HTML và text
Qunlýtrng thái trang web
Có c ch h tr debug thông qua IDE VS.NET
H
t
tái
d
d
thô
h
k
th
H
t
r
c
đi
m n
i
bt
c
a
ASP
.
NET
S
dng
c
ch
Server
-
side
Caching
S
dng
c
ch
Server
side
Caching
i cùng vi nhiu server control đcxâydng sn
Tđng nhndng trình duytngi dùng đang s dng
Web
Service
:
trin
khai
mt
hàm
t
xa
thông
qua
web
Web
Service
:
trin
khai
mt
hàm
t
xa
thông
qua
web
© 2009 Khoa CNTT - HKHTN
9
LptrìnhvàThitk Web 2 – Bài 2: Giithiu ASP .NET
NidNid
Ni
thi
u v
.
NET
F
ramewor
kGii
thi
u v
.
NET
F
ramewor
k
.NET Framework là nntn
g
cho Microsoft.NET Platform
g
.NET Framework là môi trng cho vicxâydng, trin
khai và vn hành các n
g
dn
g
Win/Web cn
g
NET
F
ramewor
k
––
vers
i
on vers
i
on
22
00
Giú
p
đn
g
in hóa
q
uá
p
g
q
trình phát trin, tích hp
sn phm
.NET Framework không
ph thuc vào ngôn ng
ph
NET F kNET F k
C
C
c
h
c
h
h
o
th
o
t
đ
ng
đ
ng c
ac
a.
NET
F
ramewor
k
.
NET
F
ramewor
k
––
vers
i
on vers
i
on
33
00
Windows Presentation Foundation (WPF).
Windows Cardspace
Windows Communications Foundation (WCF).
Windows Workflow Foundation (WF).
© 2009 Khoa CNTT - HKHTN
14
Lp trình và Thitk Web 2 – Bài 2: Giithiu ASP .NET
Giithi NET F kGiithi NET F k
ii
33
55
Gii
thi
u v
.
NidNid
Ni
d
ung
Ni
d
ung
Gii
thiu
v
ASP.NET
Gii
thiu
v
ASP.NET
Giithiuv .NET Framework
Các thành ph
ncamt ng dng Web
C ch x lý mt ng dng ASP.NET
Cutrúcca 1 WebForm
© 2009 Khoa CNTT - HKHTN
16
Lp trình và Thitk Web 2 – Bài 2: Giithiu ASP .NET
C SC S
C
tt
dd
ASP NETASP NET
Cá
c
Cá
c
thà
n
hthà
n
h
p
h
np
h
nc
ac
am
t
m
t
ng
ng
Cá
c
Cá
c
thà
n
hthà
n
h
p
h
np
h
nc
ac
am
t
m
t
ng
ng
d
ng
d
ng
ASP
phn
thc
thi ca Web Form đclu trong các file .dll và chytrên
server
thông
qua
điu
khin
ca
IIS
server
thông
qua
điu
khin
ca
IIS
© 2009 Khoa CNTT - HKHTN
19
LptrìnhvàThitk Web 2 – Bài 2: Giithiu ASP .NET
NidNid
Ni
d
ung
Ni
d
m
t
t
rang
ASP
.
NETC
c
h
x
lý
m
t
t
rang
ASP
.
NET
© 2009 Khoa CNTT - HKHTN
21
LptrìnhvàThitk Web 2 – Bài 2: Giithiu ASP .NET
DD
D
emo
D
emo
d
ung
Gii
thiu
v
ASP.NET
Gii
thiu
v
ASP.NET
Giithiuv .NET Framework
Các thành ph
ncamt ng dng
A
SP .NET
C ch x lý mt ng dng ASP.NET
Cutrúcca 1 WebForm
© 2009 Khoa CNTT - HKHTN
23
LptrìnhvàThitk Web 2 – Bài 2: Giithiu ASP .NET
CC
C
u trúc mt Web Form aspx
C
u trúc mt Web Form aspx
Mt Web Form bao gm các thành phn:
C
on
t
ro
l
s
– Server-side comments
– Literal Text và HTML Tags
Code Declaration Blocks và Code Render Blocks có th đt
trc tip trên WebForm hoc tách bit trong file Code Behind
© 2009 Khoa CNTT - HKHTN
24
Lp trình và Thitk Web 2 – Bài 2: Giithiu ASP .NET
Cutrúcmt Web Form aspxCutrúcmt Web Form aspx
Cu
trúc
mt
Web
Form
aspxCu
trúc
mt
<>
Server-side comments
<
p
>
<asp:Label id="messageLabel" runat="server" />
</p>
<p>
<% Declare the title as string and set it %>
Web controls
<% string Title = "This is generated by a code render " +
"block."; %>
<%= Title %>
</p>
</form>
Code render Blocks
© 2009 Khoa CNTT - HKHTN
</form>
</body>
</html>
25
LptrìnhvàThitk Web 2 – Bài 2: Giithiu ASP .NET
Di tiDi ti
Di
rec
ti
ves
Di
rec
ti
trên
Web
Form
Mt s thuc tính quan trng:
Language
AutoEventWireup
CodeFile
Language
,
AutoEventWireup
,
CodeFile
,
Ví d:
<%@ Language=“C#” AutoEventWireup=“true”
CodeFile=“Default.aspx.cs” %>
© 2009 Khoa CNTT - HKHTN
26
Lp trình và Thitk Web 2 – Bài 2: Giithiu ASP .NET
CdCd
dl tidl ti
bl kbl k
C
o
d
e
C
o
nu
phn
x
lý
logic
ca
chng
trình
đc
th hin ngay trong Web Form ( không s dng code behind )
Khai báo các phng thchoc các hàm x lý s kin
Khai
báo
các
phng
27
LptrìnhvàThitk Web 2 – Bài 2: Giithiu ASP .NET
CdCd
RdRd
Bl kBl k
C
o
d
e
C
o
d
e
R
en
d
e
rR
en
d
e
r
Bl
oc
k
s
Bl
oc
k
s
o
d
e
C
o
d
e
R
en
d
e
rR
en
d
e
r
Bl
oc
k
s
Bl
oc
k
s
I
n
li
ne
C
o
không
tr
ni dung v phía trình duyt.
Thng đcs dng đ khai báo bin
Thng
đc
s
dng
đ
khai
báo
bin
c khai báo trong cp th <% %>
Ví d:
<
%
%
string Title = "This is generated by a code render block.";
Bl
oc
k
s
I
n
li
ne
E
xpress
i
on
I
n
li
ne
E
xpress
i
on
Code x lý tr thông tin v trình duyt.
Code
x
lý
tr
d:
<%
ti
Titl
"Thi i t d b d d bl k "
s
t
r
i
ng
Titl
e =
"Thi
s
i
s genera
t
e
d
b
y a co
d
e ren
d
er
bl
oc
k
server
”
Text
=“
Text Content
”
/>
<asp:Label
ID
Label
1
runat
server
Text
Text
Content
/>
<asp:TextBox ID=“TextBox1” runat=“server” Text=“Enter text here” />
© 2009 Khoa CNTT - HKHTN
31
LptrìnhvàThitk Web 2 – Bài 2: Giithiu ASP .NET
SS
S
erve
rS
erve
r
side commentsside comments
–
commen
t
>
– Asp.net Comment: <% comment %>
Html comment s đc gi v trình duyt do đó không
thích hp đ comment ni dung Asp.net server-side code
Asp.net comment đc dùng đ n thông tin đi vi trình
duyt nhng s đc x lý bi Asp.net runtime
© 2009 Khoa CNTT - HKHTN
32
Lp trình và Thitk Web 2 – Bài 2: Giithiu ASP .NET
SS
S
erve
rS
erve
r
side commentsside comments
Ví d:
Ví
d:
<!
<%
string
Title
= "
This is generated by a code render block
Ktxutti trình duyt:
Kt
xut
ti
trình
duyt:
<!
This is generated by a code render block
This
is
generated
by
a
code
render
block
.
>
© 2009 Khoa CNTT - HKHTN
phn
này,
trang
web
s
không
có
cu trúc và trình duyt s không hin th đc
© 2009 Khoa CNTT - HKHTN
34
Lp trình và Thitk Web 2 – Bài 2: Giithiu ASP .NET
Lit l T t à HTML TLit l T t à HTML T
Lit
era
l
T
ex
t
v
à
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
" /><html>
<head>
<head>
<title>Sample Page</title>
<script runat="server">
void Page_Load()
{
messageLabel Text
="
Hello World
"
;
messageLabel
.
Text
Hello
World ;
}
</script>
</head>
<body>
ft""
<
f
orm runa
t
=
đ
c x
â
y
d
ng v
i
co
d
e
b
e
hi
n
dW
e
b
F
orm
đ
c x
â
y
d
ng v
i
co
d
e
báo
lp
có
nhim
v x lý các logic nghip v ca chng trình hay các s kin xy ra khi
ngi dùng tng tác vi WebForm
Tên ca lp này trùng vi tên ca WebForm
Ví d: nu tên WebForm là index tên class s là index
Tt c các class x lý s kin trên WebForm đu k tha t lp
S
y
stem.Web.UI.Pa
g
e
yg
Tt c các class đu cha hàm Page_Load t đng gi thc hin khi
WebForm nhn đc request t client
WebForm
nhn
đc
request
trên
WebForm
36
Lp trình và Thitk Web 2 – Bài 2: Giithiu ASP .NET
WbF đ âd i d bhidWbF đ âd i d bhid
W
e
b
F
orm
đ
c x
â
y
d
ng v
i
co
d
e
b
e
hi
n
dW
e
b
T
ng
ktkt
u
đim
ASP .NET
u
đim
ASP
.NET
C ch hot đng ca .NET Framework
C ch
x lý ca ng dng
A
SP .NET
Cu trúc WebForm
© 2009 Khoa CNTT - HKHTN
38