Trường Đạ i Họ c Lạ c Hồ ng 2009 - 2010
LẬ P TRÌ NH
WEB ASP.NET
Ts. Vũ Đức Lung
Ks. Huỳ nh Cao Tuấ n
Ks. Phan Hữu Tiế p
Chương 1: Giới Thiệ u
1
http://lhu.edu.vn
LHU
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Nộ i dung giới thiệ u
Phân biệ t Web tĩ nh và Web độ ng
Mô hì nh Client- side, Server-side
Công nghệ lậ p trì nh web
Giới thiệ u .NET
Mụ c đí ch .NET
ASP & ASP.NET
Cơ bả n về ASP.NET
2
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Phân biệ t web tĩ nh – web độ ng
Định
nghĩa
Ưu
điểm
Website tĩnh
Website động
website chỉ bao gồm các
trang web tĩnh và không có
cơ sở dữ liệu đi kèm nên
thường được xây dựng
bằng các ngôn ngữ HTML,
DHTML.
là thuật ngữ đư ợc dùng để chỉ
những website có cơ sở dữ liệu và
được hỗ trợ bởi các phần mềm
phát triển web.
Thông tin hiển thị đư ợc gọi ra từ
một cơ sở dữ liệu khi người dùng
truy vấn tới một trang web
Thiết kế đ ồ hoạ đ ẹp Dù ng nhiề u ngôn ngữ lậ p trì nh
Tốc độ truy cập nhanh khá c nhau và nhiề u hệ cơ sở dữ
liệ u khá c nhau
Chi phí đầu tư thấp
Thông tin luôn mới, có tí nh tương
tá c
cao, d
ễ
hiệ u
chỉ nh
3
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Phân biệ t web tĩ nh – web độ ng
Website tĩnh
Website động
Khó khăn trong vi ệc thay đổi cập nhật
Khuyết Thông tin không có tính linh hoạt, Chi phí đầu tư cao
điểm không thân thiện với người dùng Dễ bị tấn công
Khó tích hợp, nâng cấp, mở rộng
4
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Mô hì nh Client- Side
Lậ p trì nh Client-side
Ngôn ngữ được sử dụng để lập trình xử lý ở phía client gọi là
Client – side script, thông dụng nhất là Java Script . Tronf đó,
đoạn code được nhúng vào trang HTML hay đặt trong một tập
tin riêng biệt và tập tin này sẽ được khai báo trong trang HTML.
Quá trình yêu cầu và trả về cho máy client của một trang web
sử dụng kỹ thuật lập trình client – side như sau : khi máy client
gửi yêu cầu một URL đến Web Server thông qua trình duyệt
Web ( Web Browser), Web Server sẽ tìm kiếm trang web đó.
Nếu tìm thấy, Web Server sẽ trả về kết quả về máy client đồng
thời gửi kèm các đoạn lệnh xử lý của các tập tin cần thiết (*.js,
*.css..) đính kèm của trang web đó. Sau đó, ngay tại trình duyệt
của máy client, các đoạn xử lý đ ó sẽ được thực thi. Do đó, điều
quan trọng đối với người lập trình là khi xây dựng xử lý ở phía
client phải đảm bảo ứng dụng của mình chạy đúng trên các
trình duyệt.
5
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Mô hì nh Client- Side
Đặc điểm khi xử lý tại client:
Nhanh, không mát nhiều thời gian chuyển vể Server rồi quay lại
client do dữ liệu cần dùng để xử lý có tại client.
Chỉ có thể lập trình thực hiện những xử lý đơn giản và độc lập
Không cần phải cài đặt phần mềm tại Web Server, tuy nhiên
trình duyệt phải hỗ trỡ ngôn ngữ script mà trang HTML đang s ử
dụng
Rất hữu ích cho DHTML
6
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Mô hì nh Client- Side
Lập trình Server – side :
Ngôn ngữ được sử dụng để lập trình xử lý ở phía server gọi là
Server – side cript. Chúng ta có 01 số ngôn ngữ lập trình phía
server như: ASP, ASP.NET, PHP…
Kỹ thuật lập trình phía server khác so với client, đó là các đoạn
mã lệnh (source code) sẽ đư ợc biên dịch và thi hành ngay tại
Web Server. Sau đó trả về client dư ới dạng HTML, JavaScript
hay CSS
Kỹ thuật này thường được áp dụng cho các trang web động và
có sự tương tác với cơ sở dữ liệu
7
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Mô hì nh Client- Side
Đặc điểm khi xử lý tại Server :
Chậm, do dữ liệu phải chuyển về server và chờ nhận kết quả trả
về rồi thể hiện trên client
Thực hiện những xử lý phức tạp, cần truy cập cơ sở dữ liệu và
xử lý tập tin
Trang web linh động, phục vụ đa yêu cầu của người dùng.
Phải cài đặt phần mềm tại web server
Tó m lạ i :
Trong quá trình triển khai một ứng dụng web, đ ể website của
bạn thật sự có hiệu quả, bạn cần phân tích các xử lý, nhận biết
bản chất của mỗi xử lý là nên thực hiện ở client hay server đ ể từ
đó xây dựng phối hợp các xử lý cho phù hợp
8
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Tổ ng quan công nghệ lậ p Trì nh web
HTML ( HyperText Markup Language)
Trang web HTML là 01 tậ p tin văn bả n được viế t bằng ngôn
ngữ HTML, ngôn ngữ nà y cò n được biế t đế n với tên gọ i: ngôn
ngữ đá nh dấ u văn bả n
Ngôn ngữ HTML sử dụ ng cá c ký hiệ u quy đị nh sẵn (được gọ i là
Tag) để trì nh bà y nộ i dung văn bả n
Nộ i dung + Đị nh dạ ng = Kế t quả hiể n thị
9
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Tổ ng quan công nghệ lậ p Trì nh web
Mô hình ứng dụng 02 lớp
Đây là mô hình đơn giản, khá phổ biến của 01 ứng dụng phân tán
Trong mô hình này, việc xử lý dữ liệu được thực hiện trên Database
Server, việc nhận và hiển thị dữ liệu được thực hiện ở client
Ưu điể m: Dữ liệu tập trung do đó đ ảm bảo dữ liệu được nhất
quán. Dữ liệu được chia sẻ cho nhiều người dùng.
Khuyế t điể m: Cách xử lý tra cứu và truy cập dữ liệu được thực
hiện ở Database Server, việc nhận kết quả và hiển thị phải được
thực hiện ở Client . Do đó khó khăn trong vi ệc bảo trì và nâng
cấp. Khối lượng, dữ liệu truyền trên mạng lớn do đó chiếm dụng
đường truyền thêm gánh nặng cho database server
10
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Tổ ng quan công nghệ lậ p Trì nh web
Mô hình ứng dụng 02 lớp:
Mô hình hai lớp phần nào đáp ứng được yêu cầu khắt khe của
01 ứng dụng phân tán, tuy nhiên khi khối lượng dữ liệu lớn, ứng
dụng đòi hỏi nhiều xử lý phức tạp, số người dùng tăng, mô hình
02 lớp không thể đáp ứng được
Mô hình 03 lớp sử dụng thêm Apllication Server giữ nhiệm vụ
tương tác giữa Client và Server, giảm bớt các xử lý trên
Database Server, tập trung các xử lý nhận và hiển thị dữ liệu tại
Application Server
Ưu điể m: Hỗ trợ người dùng. Giảm bớt xử lý cho client, không yêu
cầu máy Client có cấu hình mạnh. Xử lý nhận và hiện thị dữ liệu tập
trung tại Application Server -> dễ dàng quản lý, bảo trì và nâng cấp.
Xử lý truy cập dữ liệu tập trung tại Database Server
Khuyế t điể m: Phải sử dụng 01 Application Server
11
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Giới thiệ u .NET
.NET là gì ?
A new software platform for the desktop and the Web
Nguồ n gố c củ a .NET
Hệ điề u hà nh: tậ p hợp cá c COM (Component Object
Model) tương tá c với nhau.
Chương trì nh=COM
COM+
1998 IIS ver.4 => Project: Khung dịch vụ web thế hệ kế
tiếp (Next Generation Web Service Framework - NGWSF)
11/2000 phát hành Beta 1 của .NET
Cuối 2001 chính thức cho ra đời phiên bản đầu tiên
12
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Giới thiệ u .NET
.NET Platform là gì ?
.NET Platform bao gồ m .NET Framework và những công cụ
được dù ng để xây dựng, phá t triể n ứng dụ ng và dị ch vụ
ASP.NET
Những sả n phẩ m công nghệ .NET củ a Microsoft bao gồ m:
MSN.NET, OFFICE.NET, VISUAL STUDIO.NET, WINDOWS
SERVER 2003
VISUAL STUDIO.NET là bộ phầ n mề m được dù ng để xây dựng
và phá t triể n cá c ứng dụ ng bao gồ m cá c ngôn ngữ lậ p trì nh:
C++.NET, Visual Basic.NET, ASP.NET, C# và j#.
Tấ t cả cá c ngôn ngữ nà y đề u được xây dựng trên nề n .NET
Framework, do đ ó cú phá p cơ bả n củ a những ngôn ngữ nà y
tương tự nhau.
13
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Giới thiệ u .NET
Cá c bộ phậ n chí nh củ a Microsoft NET Framework
14
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Giới thiệ u .NET
Các phần chính của Microsoft.NET Framework
Framework 1.0,1.1, 2.0, 3.0,…
Integrated Development Environment (IDE)
Kiến trúc .NET có 3 tầng:
Common Language Runtime (CLR)
Bộ thư vi ện các lớp cơ sở (.NET Framework Base Classes):
String, Integer, Exception,…
ASP.NET và Windows Forms
15
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Giới thiệ u .NET
NET application được chia ra làm hai loại:
Cho Internet gọi là ASP.NET, gồm có Web Forms và Web
Services
Cho desktop gọi là Windows Forms.Windows Forms giống như
Forms của VB6. Nó hổ trợ Unicode hoàn toàn, rất tiện cho chữ
Việt và thật sự Object Oriented
Note:
Web Forms có những Server Controls làm việc giống như các
Controls trong Windows Forms, nhất là có thể dùng codes để
xử lý Events y hệt như của Windows Forms.
16
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Giới thiệ u .NET
.NET Framework là gì ?
.NET Framework là nền tảng cho Microsoft.NET Platform
.NET Framework là môi trư ờng cho việc xây dựng, triển khai và
vận hành các ứng dụng Web cũng như Web Service
.NET Framework giúp đơn giản hóa quá trình phát triển cũng
như tích hợp sản phẩm
.NET Framework không phụ thuộc vào ngôn ngữ. Các ngôn ngữ
đang được hỗ trợ: C++, C#, VB.NET, J#
.NET Framework chứa Common Language Runtime (CLR) và
các lớp thư viện cung cấp các dịch vụ cơ s ở đ ể xây dựng các
ứng dụng
17
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Mụ c đí ch củ a .NET
Mô hì nh đồ ng nhấ t cho lậ p trì nh Form(Desktop) và Web
18
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Mụ c đí ch củ a .NET
Trước đây: rấ t hạ n chế
.NET: binary compatibility between more than 20 languges
(C#, C++, VB.NET, Java, Eiffel, Fortran, Cobol, ML, Haskell,
Pascal, Oberon, Perl, Python, ...)
19
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Mụ c đí ch củ a .NET
Tương tá c giữa cá c ngôn ngữ lậ p trì nh:
20
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Lợi í ch dùng CIL
21
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Lợi í ch của việc sử dụng ASP
Công nghệ Server-side scripting
Tự động biên dịch
Cho phép tạo các ứng dụng web đơn giản nhanh chóng và dễ
dàng
Tạo trang web có tích hợp nội dung động
Sử dụng hiệu quả các đối tượng COM: ADO (ActiveX Data
Object), xử lý dữ liệu, FSO (File System Object), làm việc với
hệ thống tập tin,…
Hỗ trợ nhiều ngôn ngữ: JavaScript, VBScript
22
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Những bấ t lợi khi sử dụ ng ASP
Chỉ hỗ trợ 2 loại ngôn ngữ : VBScript và JavaScript
Thông dịch mã lệnh ASP
Pha trộn code, HTML và text
Tương thích trình duyệt
Không hỗ trợ cache
Cơ chế debug kém
Tái sử dụng code kém
23
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Giới thiệ u ASP.NET
ASP.NET là một công nghệ có tính cách mạng dùng để phát
triển các ứng dụng về mạng hiện nay cũng như trong tương
lai (ASP.NET is a revolutionary technology for developing web
applications)
ASP.NET là kỹ thuậ t lậ p trì nh và phá t triể n ứng dụ ng web ở
phí a server (Server – side ) dựa trên nề n tả ng củ a
Microsoft.NET Framework
Một công nghệ server-side mới, mạnh để tạo các trang web
động (A new and powerful server-side technology for creating
dynamic web pages)
ASP.NET sử dụ ng kỹ thuậ t lậ p trì nh ở phí a server, mã lệ nh ở
phí a server sẽ được biên dị ch và thi hà nh tạ i Web server.
Tấ t cả cá c xử lý lệ nh ASP.NET đề u được thực hiệ n tạ i server
do đó gọ i là kỹ thuậ t lậ p trì nh ở phí a server
24
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Các điểm nổi bật của ASP.NET
Hỗ trợ đa ngôn ng ữ : >20 C#, C++, VB.NET, Java, Eiffel,
Fortran, Cobol, ML, Haskell, Pascal, Oberon, Perl, Python, ...
Biên dịch các trang trước, giúp làm tăng tốc độ thực hiện.
Thay vì phả i đọ c và thông dị ch mỗ i khi trang web được yêu
cầ u, ASP.NET biên dị ch những trang web độ ng thà nh tậ p tin
DLL mà Server có thể thi hà nh nhanh chó ng và hiệ u quả .
ASP.NET hỗ trợ mạ nh mẽ bộ thư việ n phong phú và đa dạ ng
củ a .NET Framework, là m việ c với XML, Web Service , truy
cậ p cơ sở dữ liệ u qua ADO.NET.
ASPX và ASP có thể cù ng hoạ t độ ng trong mộ t ứng dụ ng
ASP.NET sử dụ ng phong cá ch lậ p trì nh mới: code behide.
Tá ch code riêng, giao diệ n riêng => Dễ quả n lý , dễ đọ c và bả o
trì
Kiế n trú c lậ p trì nh giố ng ứng dụ ng trên Windows
25
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Các điểm nổi bật của ASP.NET
Hỗ trợ trạ ng thá i củ a cá c control
Tự độ ng phá t sinh mã HTML cho cá c Server control tương
ứng với từng loạ i Browser
Hỗ trợ nhiề u cơ chế cache
Triể n khai cà i đặt không cầ n lock, không c ầ n đăng ký DLL.
Cho phé p nhiề u hì nh thức cấ u hì nh ứng dụ ng.
Hỗ trợ quả n lý ứng dụ ng ở mức toà n cụ c
Global.aspx có nhiề u sự kiệ n hơn
Quả n lý session trên nhiề u Server, không cầ n Cookies
26
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Khá c biệ t giữa ASP.NET và ASP
Tập tin của ASP.NET - .ASPX, còn tập tin của ASP - .ASP
- Tập tin của ASP.NET được phân tích ngữ pháp (parsed) bởi
XSPISAPI.DLL, còn ASP ASP.DLL.
ASP.NET dùng event driven, còn ASP được thi hành theo thứ
tự tuần tự từ trên xuống dưới.
ASP.NET xử dụng trình biên dịch (compiled code) nên rất
nhanh, còn ASP dùng trình thông dịch (interpreted code) do
đó hiệu suất và tốc độ phát triển cũng thua sút hẳnASP.NET :
25 ngôn ngữ lập trình mới với .NET và chạy trong môi trường
biên dịch (compiled environment), còn ASP: VBScript và
JavaScript
ASP.NET yểm trợ tất cả các browser và quan trọng hơn nữa
là yểm trợ các thiết bị lưu động (mobile devices).
27
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Cá ch thức là m việ c củ a HTML
28
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Cá ch Thức Củ a Trang Web Độ ng
29
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Cá ch thức là m việ c củ a trang ASPX
30
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Cài đặt các chương trình đòi hỏi cho
ASP.NET
Internet Information Server (IIS) và bố trí Virtual Directory
Windows XP tích hợp IIS 5.5
Nếu chưa có thì phải cài thêm
MS Visual Studio.NET
trong trường hợp này thì MS Visual Studio .NET đã cài sẵn .NET
Framework SDK cho ta dùng với ASP.NET hoặc là dùng Web
Matrix
.NET Framework Software Development Kit (SDK)
31
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
IIS – Internet Information Server
IIS có thể sử dụ ng như web server, kế t hợp với ASP để xây
dựng cá c ứng dụ ng web, tậ n dụ ng cá c điể m mạ nh củ a
Server-side script, COM component… theo mô
hì nh
Client/Server
IIS chuyển giao thông tin bằng giao thức chuyển đổi siêu văn
bản HTTP
IIS có rấ t nhiề u phiên bả n
Phiên bả n Windows 2000 tí ch hợp IIS 5.0
Windows XP tí ch hợp IIS 5.5
Windows XP.Net Server tí ch hợp IIS 6.0, hỗ trợ cá c tí nh năng
dà nh cho .NET củ a ASP.NET và Web Service
32
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
IIS – Internet Information Server
IIS làm được gì?
Xuất bản 1 Home page lên internet
Tạo các giao dịch thương mại trên internet
Truy xuất cơ sở dữ liệu từ xa
Hoạ t độ ng củ a IIS
IIS
dịch
URL
sang
path
cục
bộ
(vd:
d:\domains\thisSite\wwwroot\site\index.aspx)
Sử dụng Common LanguageRuntime compiler dịch sang ngôn
ngữ trung gian MSIL, rồi sang mã nhị phân để thực thi.
Mã nhị phân được chứa tạm vào 1 vùng. Nếu lần gọi sau cần sử
dụng mà trang web ko có gì thay đ ổi thì sẽ lấy sử dụng mà ko
cần dịch lại. Nếu có thay đ ổi thì sẽ dịch lại và cập nhật vào vùng
này.
Server trả về kết quả tương ứng với trình duyệt của client.
Trình duyệt client xử lý phần hiển thị.
33
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Cài đặt IIS trong WinXP
Start->Settings-> Control Panel-> Add/Remove Programs và
nhấp đơn (click) Add/Remove Windows Components, xong
chọn Internet Information Server như sau:
34
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Giới thiệu về WEB MATRIX
Web Studio Mongoose Project Saturn Tahiti Project
Microsoft ASP.NET Web Matrix.
- Free ware
- Tạo ra từ C#
- 800 class (.NET Framework >3000)
- Rất nhỏ: 1.3MB (dạng đóng gói)
35
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Khá c biệ t giữa VISUAL STUDIO.NET và
WEB MATRIX
VS.NET dùng làm đủ mọi thứ, WM chỉ làm ASP.NET
WM support FTP, VS không (1.0,1.1)
WM có ASP.NET Web Matrix Server, còn VS có ASP.NET
Development Server
VS support IntelliSence và Debugging, còn WM không
36
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Phân loạ i tậ p tin Trong ASP.NET
.asax: tậ p tin global.asax trong ASP.NET thay th ế cho tậ p tin
global.asp trong ASP, là tậ p tin quả n lý cá c sự kiệ n củ a ứng
dụ ng (application), session, và cá c sự kiệ n khi có cá c yêu cầ u
tới trang web
.ascx: cá c điề u khiể n do người dù ng tự tạ o được lưu trữ với
phầ mở rộ ng ascx
.asmx: tậ p tin web service củ a ứng dụ ng ASP.NET
.aspx: phầ n mở rộ ng mặc đị nh củ a trang ASP.NET
.config: tậ p tin cấ u hì nh ứng dụ ng theo đị nh dạ ng XML.
Web.config chứa hầ u hế t cá c cấ u hì nh củ a ứng dụ ng
.cs: tậ p tin mã nguồ n viế t theo ngôn ngữ C#
.js: tậ p tin mã nguồ n củ a javascript
.vb: tậ p tin mã nguồ n viế t theo ngôn ngữ VB.NET
37
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Ngôn ngữ lập trình ASP.NET
VB.NET : dễ hiểu và được cho là đơn gi ản nhất, nên đi theo
cách này nếu đã sử dụng thành thạo VB
C# : Gần với Java và C++, có nhiều chức năng hơn. Nên
chọn C# nếu am hiểu sâu về C++ và Java
J#: Ít được sử dụng, nhưng sẽ tốt với ai thông thạo Java
Các ngôn ngữ khác: C++.NET, Smalltalk.NET, COBOL.NET,
Eiffel.NET, Perl.NET, Component Pascal.NET, Mercury.NET,
Oberon.NET, Python.NET,…
38
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Cấu trúc trang ASP.NET
Ngôn ngữ lập trình trong ASP.NET
Directives
Code declaration blocks
Code render blocks
ASP.NET server control
Server-side comments
Server-side include directives
Literal text and HTML tags
39
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Cấ u Trú c Trang ASP.NET
40
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Directives
Tự động khai báo mỗi khi trang aspx được tạo ra
Cung cấp cho ASP.NET những thông tin đặc biệt để
ASP.NET biết cách mà đối xử cũng như những thông tin dùng
trong tiến trình biên dịch (during the compiling process)
Cung cấp các chỉ dẫn thường được sử dụng trong
trang
như: Page, Assembly, Control,
Implements, Import, Master,
OutputCache,
PreviousPageType, Reference và Register
Cho phép Import các class vào để dùng trong trang web này
Ví dụ :
<%@ Page Language=“VB” AutoEventWireUp=“true”
CodeFile=“Default.aspx.vb” Inherits=“_Default” %>
41
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Directives
Directive
Ý nghĩa
Assembly
Liên kết assembly va Page hay user control
Control
Sử dụng cho user control
Import
Không gian tên dùng cho Page hay user control
Master
Chỉ định trang chính được dùng trong trang
Master.
OutputCache điều khiển chính sách sử dụng bộ nhớ cache cho
trnag ASP.NET hay user control
Page
Chỉ định những thuộc tính và giá trị của trang
Reference
Chỉ dẫn liên kết đến một trang khác
Register
Đăng ký không gian tên hay lớp trong custom
control
42
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Code declaration blocks
43
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Other attributes
Tags “< script>…..</script>” cho phép các thuộc tính khác
44
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Code render blocks
Dùng trực tiếp trong html code trong <% và %>
Là phương pháp cổ điển ASP, thường dùng Response.Write()
45
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
ASP.NET Server Control
Có 4 dạng Server control cơ bản:
ASP.NET controls
HTML controls
Validation controls
User control
Tất cả ASP.NET controls phải nằm trong <form runat=“server”>
để thực hiện đúng chức năng ngoại trừ HtmlGenericControl và
Label Web control
46
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Server-Side Comments
Tương tự như HTML truyền thống dùng <!-- …..-->,
ASP.NET dùng <%-- ….--%>
Ví dụ: <%-- Hàm tính diện tích hình vuông --%>
47
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Server-Side include directives
Dùng đặc tính file
<!-- #INCLUDE file=“myinclude.aspx” -->
Virtual server-side include
<!-- #INCLUDE virtual=“/directory1/myinclude.aspx” -->
48
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Literal text and HTML tags
49
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Xử lý sự kiệ n
Xử lý sự kiện trong ASP
50
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Xử lý sự kiệ n
Xử lý sự kiện trong ASP
51
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Ví dụ xử lý sự kiệ n
52
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Kết Quả Củ a Ví Dụ
53
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Trang HTML tĩnh
54
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Trang ASPX động đơn giản
55
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Cách thức hoạt động
56
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
HTML Code được trả về từ server
57
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Code trong Script Tag
58
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Code Behind
59
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Trang ASP.NET đầ u tiên
60
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Trang ASP.NET đầ u tiên
61
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Trang ASP.NET đầ u tiên
62
http:// lhu.edu.vn
Ts. Vũ Đức Lung – Ks. Huỳ nh Cao Tuấ n - Ks. Phan Hữu Tiế p
Trang ASP.NET đầ u tiên
63
http:// lhu.edu.vn
www.themegallery.com
64
http://lhu.edu.vn
LHU