Tải bản đầy đủ (.pdf) (53 trang)

Tìm hiểu asp net và xây dựng website phòng trọ sinh viên

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.33 MB, 53 trang )

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

Lời cảm ơn
Em xin bày tỏ lòng cảm ơn sâu sắc tới:
Thạc sỹ Hồ Thị Huyền Th-ơng-giảng viên tổ ph-ơng pháp giảng dạy
khoa Công nghệ thông tin, cô đà t- vấn cho em chọn đề tài, h-ớng dẫn tận
tình, tạo mọi điều kiện thuận lợi trong suốt quá trình thực hiện khóa luận.
Đồng thời em cũng bày tỏ lời cảm ơn chân thành tới các Thầy, Cô giáo
Khoa Công nghệ thông tin, tổ bộ môn ph-ơng pháp giảng dạy cùng gia đình,
bạn bè và ng-ời thân đà tạo mọi điều kiện giúp đỡ, động viên em hoàn thành
khóa luận này.

Vinh, tháng 5 năm 2009
`

Sinh viên
Nguyễn Thị Bính

Sinh viên thực hiện: Nguyễn Thị Bính - Líp 46B3 Khoa CNTT

1


GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

Mục lục
Trang


Mở đầu ................................................................................................ 3
Lý do chọn đề tài ..................................................................................... 3
Nội dung nghiên cøu ............................................................................... 3
Ch-¬ng I: Giíi thiƯu Internet, HTML ................................................. 4
1.1.

Giíi thiƯu HTML ........................................................................... 5

1.2.

HTML Development...................................................................... 5

1.3.

CÊu tróc cđa mét tµi liƯu HTML ................................................... 6

Ch-¬ng II: Giíi thiƯu vỊ ASP.NET ...................................................... 8
2.1. Yếu tố đặc biệt của ASP.NET .......................................................... 9
2.2. Những ®Ỉc ®iĨm míi cđa ASP.NET 2.0 ........................................... 14
2.3. .NET FrameWork và trang ASP.NET .............................................. 16
2.4. Cấu hình trang ASP.NET .................................................................. 25
2.5. Kiến trúc trang ASP.NET ................................................................. 27
2.6. Tiến trình biên dịch trang ASP.NET 2.0 .......................................... 30
Ch-ơng III: Xây dựng ứng dụng Website phòng trọ sinh viên ..... 35
3.1. Phân tích và thiết kế hệ thống .......................................................... 35
3.1.1. Phân tích hệ thống ......................................................................... 36
3.1.1.1 Biểu đồ phân cấp chức năng ....................................................... 38
3.1.1.2. Biểu đồ luồng dữ liệu ................................................................. 38
3.2. Thiết kế hệ thống .............................................................................. 41
3.3. Cài đặt hệ thống................................................................................ 43

3.3.1. Trang chủ....................................................................................... 43
3.3.2 Tìm phòng ...................................................................................... 44
3.3.3.Tin tr-ờng ....................................................................................... 45
3.3.4. Đăng ký. ........................................................................................ 47
Kết luận ............................................................................................ 50
Tài liệu tham khảo .................................................................... 51
Sinh viên thực hiện: Nguyễn Thị Bính - Lớp 46B3 Khoa CNTT

2


GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

Mở đầu
1. Lý do chọn đề tài
Hàng năm, tr-ờng đại học Vinh lại đón hàng nghìn sinh viên mới vào
nhập học. Hiện nay nhà tr-ờng ch-a có đủ chỗ ở nội trú cho sinh viên. Vì vậy
nhu cầu tìm nhà trọ là một nhu cÇu tÊt u. Tõ tr-íc tíi nay hÇu nh- sinh viên
tìm đ-ợc nhà trọ là do giới thiệu của anh chị, bạn bè, hay là do chủ trọ đón
khách. Nh- vậy thì sinh viên mới đến đang còn bỡ ngỡ, ch-a quen đ-ờng
thuộc lối nên có thể sẽ không tìm đ-ợc cho mình một nhà trọ phù hợp với nhu
cầu sinh sống, điều kiện học tập, phù hợp với điều kiện gia đình mình. Bên
cạnh đó thì những gia đình có phòng cho sinh viên thuê lại phải đón khách trọ
tại cổng tr-ờng, bến xe, ga tàu. Nh- vậy sẽ gây mất trật tự nơi công cộng
khi tranh giành hoặc chào mời khách mà không đạt hiệu quả cao.
Để góp phần giải quyết những vấn đề bất cập thực tế nh- trên và để tận
dụng đ-ợc tiềm năng của mạng Internet, tôi chọn đề tài khóa luận tốt nghiệp
ngành cử nhân khoa học công nghệ thông tin: Tìm hiểu ASP.NET xây dựng

trang Website Phòng trọ sinh viên. Ưu điểm của trang Website này là sinh
viên có thể tự tìm cho mình một nhà trọ phù hợp với điều kiện sống, điều kiện
học tập và giá cả hợp lý. Bên cạnh đó đối với các chủ trọ không cần phải đón
khách trọ tại những nơi công cộng đông đúc gây mất trật tự, không hiệu quả
mà chỉ cần đăng ký qua Website này. Sau đó sinh viên mới sẽ tự tìm hiểu các
phòng trọ trên trang Website và chọn cho mình một phòng trọ phù hợp nhất.
2. Mục tiêu của đề tài
Là xây dựng đ-ợc một trang Website Phòng trọ sinh viên với các
chức năng đơn giản, thuận tiện và hiệu quả. Hệ thống làm việc ổn định, hạn
chế đến mức thấp nhất các lỗi có thể xảy ra.
3. Nội dung nghiên cứu
- Tìm hiểu Web page (HTML), ASP.NET.
- Xây dựng Website Phòng trọ sinh viên

Sinh viên thực hiện: Nguyễn ThÞ BÝnh - Líp 46B3 Khoa CNTT

3


GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

Ch-ơng I. Giới thiệu interner, HTML
Internet, World Wide Web, và Web page không chỉ còn là các
thuật ngữ. Giờ đây các thuật ngữ này đà trở thành hiện thực. Internet là mạng
máy tính lớn nhất thế giới, đ-ợc xem nh- là mạng của các mạng. World Wide
Web là một tập con của Internet. World Wide Web gồm các Web Servers có
mặt khắp nơi trên thế giới. Các Web Server chứa thông tin mà bất kì ng-ời
dùng nào trên thế giới cũng có thể truy cập đ-ợc. Các thông tin đó đ-ợc l-u

trữ d-ới dạng các trang Web.
Ngôn ngữ đánh dấu siêu văn bản (HTML), đây là một phần quan trọng
trong lĩnh vực thiết kế và phát triển thế giới Web.
Mạng là một nhóm các máy tính kết nối với nhau. Internet là mạng của
các mạng. Giao thức TCP/IP (Transmission Control Protocol/Internet
Protocol) cung cấp việc kết nối tất cả các máy tính trên thế giíi.
World Wide Web lµ mét tËp con cđa Internet. Nã bắt đầu nh- là đề án
nghiên cứu cấp quốc gia tại phòng nghiên cứu CERN của Thụy Sỹ. Ngày nay
nó cung cấp thông tin cho ng-ời dùng trên toàn thế giới.
www hoạt dộng dựa trên 3 cơ chế để đ-a các tài nguyên có giá trị đến
với ng-ời dùng. Đó là:
Giao thức: ng-ời dùng tuân theo các giao thức này để truy cập
tài nguyên trên Web.
Địa chỉ: www tuân theo một cách thức đặt tên thống nhất để
truy cập vào các tài nguyên trên Web. URL đ-ợc sử dụng để nhận
dạng các trang và các tài nguyên trên Web.
HTML: Ngôn ngữ đánh dấu siêu văn bản (HTML) đ-ợc sử dụng
để tạo các tài liệu có thể truy cập trên Web. Tài liệu HTML đ-ợc tạo
ra bằng cách sử dụng các thẻ và các phần tử của HTML. File đ-ợc
l-u trên Web Server với đuôi .htm hoặc .HTML.
Sinh viên thực hiện: Nguyễn Thị Bính - Lớp 46B3 Khoa CNTT

4


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp


Khi ta sử dụng trình duyệt để yêu cầu một số thông tin nào đó, Web
Server sẽ đáp ứng các yêu cầu đó. Nó gửi thông tin đ-ợc yêu cầu đến trình
duyệt d-ới dạng các trang Web. Trình duyệt định dạng thông tin đó máy chủ
gửi về và hiển thị chúng.
1.1.

Giới thiệu về HTML
Ngôn ngữ dánh dấu siêu văn bản chỉ rõ một trang Web đ-ợc hiển thị

nh- thế nào trong một trình duyệt. Sử dụng các thẻ và các phẩn tử HTML, ta
có thể:
- Điều khiển hình thức và nội dung của trang
- Xuất bản các tài liệu trực tuyến và truy xuất thông tin trực tuyến bằng cách
sử dụng các liên kết đ-ợc chèn vào tài liệu HTML.
- Tạo các biểu mẫu trực tuyến để thu nhập thông tin về ng-ời dùng, quản lý
các giao dịch.
- Chèn các đối t-ợng nh- Audio clip, video clip, các thành phần Active các
Java Applet vào tài liệu HTML.
Tài liệu HTML tạo thành mà nguồn của trang Web. Khi đ-ợc xem trên
trình soạn thảo, tài liệu này là một chuỗi các thẻ và các phần tử, mà chúng xác
định trang Web hiển thị nh- thế nào. Trình duyệt đọc các file có đuôi .htm hay
.HTML và hiển thị trang Web đó theo các lệnh có trong đó.
1.2 HTML Development
Tài liệu HTML đ-ợc hiển thị trên trình duyệt. Trình duyệt là một ứng
dụng đ-ợc cài đặt trên máy khách. Trình duyệt đọc mà nguồn HTML và hiển
thị trang theo các lệnh trong đó.
Trình duyệt đ-ợc sử dụng để xem các trang Web và điều h-ớng. Trình
duyệt đ-ợc biết đến sớm nhất là Mosaic, đ-ợc phát triển bởi trung tâm ứng
dụng siêu máy tính quốc gia (NCSA). Ngày nay, có nhiều trình duyệt đ-ợc sử

dụng trên Internet. Netscapes Navigator và Microsofts Internet Explorer là
hai trình duyệt đ-ợc sử dụng phổ biến. Đối với ng-ời dùng, trình duyệt dễ sử
dụng vì nó có giao diện đồ họa với việc trỏ và kích chuột.
Sinh viên thực hiện: Ngun ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

5


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

Để tạo một tài liệu nguồn, ta cần có một trình soạn thảo HTML. Ngày
nay có nhiều trình soạn thảo đang đ-ợc sử dụng: Micosoft Front Page là một
công cụ tổng hợp đ-ợc dùng để tạo, thiết kế và hiệu chỉnh các trang Web.
Chúng ta cũng có thể thêm văn bản, hình ảnh, bảng và những thành phần khác
vào trang. Thêm vào đó, một biểu mẫu cũng có thể tạo ra b»ng Front Page.
Mét khi chóng ta t¹o ra giao diƯn cho trang Web, Front Page tự động mÃ
HTML cần thiết. Chúng ta cũng có thể dùng Notepad để tạo tài liệu HTML.
Để xem đ-ợc tài liệu trên trình duyệt ta phải l-u nó với đuôi là .htm hay .html.
Các lệnh HTML đ-ợc gọi là các thẻ. Các thẻ này đ-ợc dùng để điều
khiển nội dung và hình thức trình bày của tài liệu HTML. Thẻ mở (<>) và
thẻ đóng (</>), chỉ ra sự bắt đầu và kết thúc của một lƯnh HTML.
1.3 CÊu tróc cđa mét tµi liƯu HTML
Mét tµi liệu HTML bao gồm 3 phần cơ bản:
- Phần HTML: Mọi tài liệu HTML phải bắt đầu bằng thẻ mở HTML
<HTML> và kết thúc bằng thẻ đóng HTML </HTML> . Thẻ HTML báo cho

trình duyệt biết nội dung giữa hai thẻ này là một tài liệu HTML.
- Phần tiêu đề: Phần tiêu đề bắt đầu bằng thẻ <HEAD> và kết thúc bằng
</HEAD>. Phần này chứa tiêu đề mà đ-ợc hiển thị trên thanh điều h-ớng của
trang Web. Tiêu đề nằm trong thẻ TITLE, bắt đầu bằng thẻ <TITLE> và kết
thúc là thẻ </TITLE>.
Tiêu đề: là phần khá quan trọng. Các mốc đ-ợc dùng để đánh dấu một
Website. Trình duyệt sử dụng tiêu đề để l-u trữ các mốc này. Do đó khi ng-ời
dùng tìm kiếm thông tin, tiêu đề của trang Web cung cÊp tõ khãa chÝnh cho
viƯc t×m kiÕm.
- Phần thân: Phần này nằm sau phần tiêu đề. Phần thân bao gồm văn
bản, hình ảnh và các liên kết mà ta muốn hiển thị trên trang Web của mình.
Phần thân bắt đầu bằng thẻ <BODY> và kết thúc bằng thẻ </BODY>.
Đoạn: Thẻ <P> để trình bày một đoạn. Khi viết một bài báo hay một
bài luận, ta nhóm nội dung thành một loạt các đoạn. Mục đích là nhóm
Sinh viên thực hiện: Nguyễn Thị Bính - Lớp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

6


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

các lý t-ởng logic lại với nhau và áp dụng một số định dạng cho nội
dung. Trong một tài liệu HTML, nội dung có thể đ-ợc nhóm thành các
đoạn. Thẻ đoạn <P> đ-ợc sử dụng để đánh dấu sự bắt đầu của một đoạn
mới. Thẻ đóng </P> là không bắt buộc. Thẻ <P> kế tiếp sẽ tự động bắt

đầu một đoạn mới.
Các thẻ ngắt: Phần tử <BR> đ-ợc sử dụng để ngắt dòng trong tài
liệu HTML. Thẻ <BR> bổ sung một ký tự xuống dòng tại vị trí thẻ.
Chọn canh lề: Thuộc tính align đ-ợc sử dụng để canh lề cho các
phần tử HTML trong trang Web. Chúng ta có thể canh lề văn bản, các
đối tượng, hình ảnh, các đoạn, các phân đoạn,..
Thuộc tính Align gồm các giá trị sau:
Value

Description

Left

Văn bản đ-ợc canh lề trái

Center

Văn bản đ-ợc canh lề giữa

Right

Văn bản đ-ợc canh lề phải

Justify

Văn bản đ-ợc canh lề hai bên

Canh lề đ-ợc mặc định dựa vào h-ớng của văn bản. Nếu h-ớng của văn
bản là từ trái sang phải thì mặc định là trái.


Ch-ơng II. Giới thiệu về ASP.NET
Sinh viên thực hiện: Nguyễn Thị Bính - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

7


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

ASP.NET là sự kế thừa và phát triển của ASP. ASP.NET là một công
nghệ Web xử lý từ phía máy chủ. ASP.NET cho phép sử dụng ngôn ngữ trung
lập. Trang ASP.NET có thể viết bằng rất nhiều ngôn ngữ nh-: Vbscript,
Jscript, Visual Basic, C++, C#... ASP.NET cho phép tách rời giữa mà lập
trình và nội dung tài liệu. ASP.NET cung cấp các thành phần điều khiển hoạt
động, phía trình chủ hoạt ®éng theo h-íng xư lý sù kiƯn. ASP.NET cung cÊp
c¸c dịch vụ phục vụ cho hoạt động của các thiết bị viễn thông có kết nối
Internet và máy chủ phục vụ Web. Vì công việc phải xử lý trên máy chủ là rất
nhiều. Chẳng hạn ngoài việc phải xử lý trang HTML ta còn phải có khả năng
tạo các trang WML, xử lý và trao đổi dữ liệu XML ASP.NET cung cấp kiến
trúc hạ tầng để xây dựng các ứng dụng phân tán trên Web theo giao thức triệu
gọi SOAP (Simple Object Access Protocol- giao thức truy xuất đối t-ợng đơn
giản), cho phép thực hiện chuyển đổi dữ liệu XML phục vụ cho môi tr-ờng
th-ơng mại điện tử B2B (Business to Business). ASP.NET cung cấp đầy đủ
mọi dịch vụ từ bảo mật đến cấp phát bộ nhớ, thu gom rác, theo dõi sự quá tải
của các thành phần đối t-ợng, cân bằng tải, giảm thiểu tối đa các kết nối tiêu
tốn tài nguyên. Nói tóm lại ASP.NET là một môi tr-ờng lập trình mới và đây

cũng là một ngôn ngữ hàng đầu cho việc thiêt kế và phát triển Web ®éng hiƯn
nay.
Ta biÕt r»ng vÊn ®Ị th¸ch thøc lín nhÊt đối với các ứng dụng Web ngày
nay là sự t-ơng thích trên các trình duyệt cùng với độ phức tạp của trang tài
liệu do ứng dụng tạo ra. Để tạo một trang Web hấp dẫn và tận dụng đ-ợc
những tính năng mới nhất của trình duyệt nh-ng đồng thời vẫn hiển thị đúng
đắn trên các trình duyệt cũ quá là cơn ác mộng đối với lập trình viên và các
nhà thiết kế Web.
Một trong những cách giải quyết vấn đề trên đó là h-ớng đến từng môi
tr-ờng của ứng dụng để thiết kế các trang tài liệu khác nhau. Tuy nhiên với
ASP.NET ta không cần phải viết mà lệnh, các thành phần điều khiển hoạt
Sinh viên thực hiện: Nguyễn Thị BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

8


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

động trên trình chủ có khả năng nhận dạng và sinh mà tùy theo mục đích và
yêu cầu sử dụng cuối của trình khách.
Khi lập trình với ứng dụng Web, một trong hai ngôn ngữ lập trình đ-ợc
sử dụng là Visual Basic hay Visual J++ trong trang ASP (Active Server Page)
trong những ngôn ngữ lập trình Visual Basic, J++, Visual FoxPro hay Visual
C++ trong bé Visual C++ trong bé Visual Studio 6.0.
Sau nhiều năm phát triển không ngừng, ASP đà đ-ợc nâng cấp từ phiên

bản ASP 1.0, ASP 2.0, ASP.NET 1.0, ASP.NET 1.1, rồi đến ASP.NET 2.0, sau
này là ASP.NET 3.0.
Từ khi công nghệ Microsoft .NET ra đời, 4 ngôn ngữ lập trình chính là
Visual Basic.NET, C#, C++.NET và J# mở ra một kỷ nguyên mới trong công
nghệ phần mềm, chúng cho phép lập trình viên có thể xây dựng một ứng dụng
chạy trên nền .NET bằng một trong các ngôn ngữ trên.
Với sự chuẩn hóa cao dựa vào bộ khung (FrameWork), Microsoft cho
phép những ứng dụng đ-ợc viết bằng một trong những ngôn ngữ Visual
Basic.NET, C#, C++.NET và J# có thể biên dịch ra tập tin định dạng MIL
(Microsoft Intermediate Language) có thể chạy trên FrameWork mà không
cần trình thực thi (Runtime Engine) riêng biệt cho mỗi ngôn ngữ nh- những
ngôn ngữ lập trình tr-ớc đây là Visual Basic 6.0, Visual C++ 6.0, Visual J++
6.0 thuéc bé Visual Studio 6.0.
ASP.NET 2.0 là phiên bản kế tiếp của ASP.NET 1.1 với nhiều đặc điểm
với về cấu trúc, về cơ cấu, cơ chế thực hiện, quản lý hệ thống, tập điều khiển
đa dạng và t-ơng tác với cơ sở dữ liệu trên .NETFrameWork 2.0, cho phép
chúng ta xây dựng và triển khai ứng dụng Web tốt hơn.
2.1. Yếu tố đặc biệt của ASP.NET 2.0
Ba ngôn ngữ lập trình trong bộ Visual Studio 2005 cho phép ta lập trình
ứng dụng ASP.NET 2.0 là C# 2005, Visual Basic 2005 vµ J# 2005.
Cã 10 yÕu tố đặc biệt ta cần biết khi lập trình ứng dụng Web bầng ASP.NET
2.0 dựa trên một trong ba ngôn ngữ C#, Visual Basic hay J#.
Sinh viên thực hiện: Nguyễn ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

9


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an


GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

ASP.NET t-ơng tác với .NETFrameWork
.NET FrameWork 2.0 là bộ khung chung, cho phép ta phát triển các
loại ứng dụng trên nền .NET nh-: Console Application Windows Forms,
h-ớng đối t-ợng (OO), COM+,…chóng bao gåm líp, structure, interface,
namespace,…
Khi lµm viƯc víi ASP.NET 2.0, ta cịng cã thĨ sư dơng nh÷ng líp,
structure, namespace (không gian tên) hỗ trợ cho ASP.NET 2.0.
ASP.NET không cần trình chủ Web
Khác với phiên bản ASP.NET 1.1 là cần phải cài đặt IIS (Internet
information Service) trên máy mà ta dùng để lập trình ứng dụng Web, đối với
ASP.NET 2.0 thì ta không cần cài đặt IIS trên máy dùng để phát triển ứng
dụng ASP.NET 2.0 mà chỉ cần cài đặt trên máy triển khai ứng dụng. Thay vào
đó, mỗi khi tạo mới thành công thì một trình chủ ASP.NET Development
Server đ-ợc tạo ra t-ơng ứng với ứng dụng đó. IIS chính là trình chủ Web cho
phép ta triển khai và chạy ứng dụng Web bằng ASP.
ASP.NET quản lý theo nhiỊu líp
Mét líp trong øng dơng .NET 2.0 cho phép ta tách ra thành nhiều tập
tin dựa trên từ khóa partial. Điều này cho phép một lớp có thể có nhiều lập
trình viên trong nhóm cùng phát triển
ASP.NET đ-ợc biên dịch thay vì thông dịch
Nếu nh- ta đà làm việc với kịch bản trình chủ ASP 3.0, phần mà và
phần thẻ HTML đ-ợc khai báo chen lẫn nhau, khi triệu gọi trang ASP 3.0 trên
trình duyệt, trang ASP 3.0 đ-ợc thông dịch.
Khi làm việc với ASP.NET, trang ASP.NET đ-ợc chia thành hai phần
chính là phần giao tiếp và phần mà nguồn. Tập tin ứng với phần mà giao tiếp
(khai báo thẻ HTML và điều khiển trình chủ) có tên mở rộng là .aspx, trong

khi đó tập tin chứa mà lệnh có tên .aspx.cs hay aspx.vb (còn gọi lµ tËp tin code
-behind). NÕu nh- khi triĨn khai øng dụng ASP 3.0 trên máy chủ (hosting), ta

Sinh viên thực hiƯn: Ngun ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

10


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

tải những trang .ASP vừa có mà giao tiếp và mà Visual Basic hay J++ th× khi
triĨn khai øng dơng ASP.NET, ta chỉ cần tải những trang .aspx và tập tin .dll.
Đối với ASP.NET 2.0 ta có thể biên dịch từ trang ASP.NET thay vì biên
dịch dự án nh- phiên bản ASP.NET 1.0 hay 1.1. Điều này có nghĩa là tr-ớc
khi triển khai ứng dụng ASP.NET trên máy chủ, ta biên dịch ứng dụng ở chế
độ Release, tập tin .dll tạo ra năm trong th- mục.
Với cơ chế biên dịch nh- vËy, ta cã thĨ che dÊu phÇn m· viÕt trong tập
tin code-behind. Bằng cách chép tất cả tập tin thuộc phần giao tiếp bao gồm
những tập tin .aspx, .htm, .css, .js, và thư mục Bin lên máy chủ thì ta có thể
triệu gọi trang .aspx.
Tuy nhiên, đối với ASP.NET 2.0 thì ta cần thực hiện chức năng Publish
Website thay vì biên dịch bình th-ờng.
ASP.NET cho phép lập trình đa ngôn ngữ
Mặc dù ta phải chọn một trong ngôn ngữ lập trình là C#, J# hay Visual
Basic khi tạo ra mét øng dơng Website, nh-ng tÊt c¶ mäi øng dơng đ-ợc phát

triển từ một trong ba ngôn ngữ lập trình trên điều biên dịch ra tập tin
IL(Intermediate Language).
Khi thực thi ch-ơng trình, tập tin định dạng IL này đ-ợc biên dịch ra mÃ
máy bằng CLR(Common Language Runtime), một phần chính của
.NETFrameWork. Chẳng hạn, nếu ta có đoạn mà in ra chuỗi Hello World
viết bằng ngôn ngữ lập trình C#.
Namespace HelloWorld
{
Public class TestClass
{
Private static void Main(string[] args)
{
Console.WriteLine(Hello World)
}
}
}
Cấu trúc mà định dạng IL của đoạn mà C# trên nh- sau:
Sinh viên thùc hiƯn: Ngun ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

11


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

.method public static void Main() cil Managed

{
.entrypoint
.custom instance void
[mscorlib]System.STAThreadAttribute::.ctor()=(01 00 00 00)
//Code size 14 ()xe)
.maxstack 8
IL_0000:nop
IL_0001:ldstr ‚Hello World
IL_006:call void
[mscorlib]System.Console:WriteLine(string)
IL_000b:nop
IL_000c:nop
IL_000d:ret
}//end of method Module1::Main
ASP.NET thực thi dựa trên CLR
Làm việc trên nền .NETFrameWork, ch-ơng trình có mà viết bằng
ngôn ngữ lập trình .NET đ-ợc gọi là managed code, trong khi đó những
ch-ơng trình viết bằng ngôn ngữ lập trình ngoài bộ .NET sẽ đ-ợc gọi là
unmanaged code. ứng dụng ASP.NET 2.0 đ-ợc xây dựng dựa trên ngôn ngữ
lập trình C# hay Visual Basic đ-ợc biên dịch ra tập tin định dạng IL và chạy
với kênh thi hành là CLR.
ASP.NET là h-ớng đối t-ợng
ASP.NET cho phép khai báo phần mà trong cùng tập tin giao tiếp hoặc
trong tập tin code-behind. Tuy nhiên, khi làm việc với trang ASP.NET hầu nhta sử dụng điều khiển trình chủ HTML, hay ASP.NET 2.0. Để truy cập vào các
điều khiển trình chủ này ta sử dụng ph-ơng thức, thuộc tính của các đối t-ợng
t-ơng ứng.
Sinh viên thùc hiƯn: Ngun ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

12



C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

Chẳng hạn, ta khai báo hai đối t-ợng HTMLControl và WebControl nhsau:
<input id=‛Text1‛ runat=‛server‛ type=‛text‛/>
runat=‛server‛></ASP:TextBox>
Ta cã thÓ truy cËp thuộc tính của hai điều khiển trình chủ trên trong tập
tin code-behind hay thẻ <script runat=server> bằng cú pháp t-ơng tự nh- sau:
Text1. Value=ASP.NET 2.0;
TextBox1.Text=ADP.NET 2.0;
ASP.NET tạo thành phần quan trong ứng dụng Portal
Một trong những đặc điểm mới của ASP.NET 2.0 là cho phép ta xây dựng
một ứng dụng thành phần (WebPart) và tích hợp chúng trong ứng dụng
Portal.
Một trong những Portol nổi tiếng của hÃng Microsoft là Microsoft
SharePoint Portal Server.
NÕu nh- ta sư dơng SharePoint Portal Server 2003 thì ta cần cài đặt
Windows SharePoint Portal Server 2003 và các công cụ phát triển WebPart.
Protected override void CreatChidContronl()
{
Try
{
Base.CreatChidContronl();
Table.table=newTable();

Table.BorderStyle=BorderStyle.Solid;
Table.BorderWidth=Unit.Pixel1();
TableRow tableRow=new TableRow();
TableCell tableCell=new TableCell();
TableCell,text=Hello Webpart;
TableRow.Cells.Add(tableCell);
Sinh viên thực hiện: Nguyễn Thị BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

13


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

Table.Rows.Add(tableRow);
This.Controls.Add(table);
}
catch(Exception ex)
{
Page.Response.Write(ex.Message);
}
}
ASP.NET là đa thiết bị và trình duyệt.
Hầu hết trang ASP.NET 2.0 đều sử dụng các điều khiển trình chđ
HTML vµ ASP.NET 2.0, khi ng-êi sư dơng triƯu gäi trang .aspx thì kết quả trả
về cho trình khác là thể HTML hay XHTML t-ơng ứng. Tuy nhiên tùy thuộc

vào trình duyệt mà ng-ời sử dụng dùng để triệu gọi trang .ASP mà thẻ t-ơng
ứng trả về cho thiết bị gọi là WML (Wireless Markup Language). Đối với
ASP.NET 2.0 một số điều khiển trình chủ ASP.NET 2.0 có thể hỗ trợ cho ứng
dụng triển khai trên thiết bị PDA và Mobile.
ASP.NET dễ triển khai và cấu hình
ứng với mỗi .NETFramework ta cã thĨ t×m thÊy tËp tin machine.config
cho phÐp ta cấu hình cho mọi ứng dụng ASP.NET trên máy chủ. Tuy nhiên
trong mỗi ứng dụng Website đều tồn tại tËp tin Web.config, ta cã thĨ khai b¸o
trong tËp tin này để cấu hình cho mọi ứng dụng Website thay vì phải sử dụng
đến trình điều khiển IIS.
2.2. Những đặc điểm mới của ASP.NET 2.0
Đối t-ợng Pages
Page (trang ứng dụng) sử dụng các thành phần điều khiển có khả năng
hoạt động và t-ơng tác với nhau ngay trên trình chủ Web Server. Với đặc điểm
này, chúng ta đà giảm thiểu quá trình viết mà t-ơng tác giữa các trang. Lập
trình trong môi tr-ờng ASP.NET t-ơng tự nh- lập trình thiết kế trong .NET
Windows Forms. Do đó các ứng dụng ASP.NET còn gọi là Web Forms.
Sinh viên thực hiện: Nguyễn ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

14


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

HTML Server Side Controls

Các thành phần điều khiển HTML (HTMLControl) có khả năng xử lý
ngay trên trình chủ dựa vào thuộc tính và ph-ơng thức t-ơng tác các hoạt động
của chúng phía trình khách ( Sử dụng thuộc tính runat=server). Những
thành phần điều khiển này còn cho phép kết hợp m· xư lý cđa trang ASP.NET
víi mét sù kiƯn nµo đó phát sinh phía trình khách đ-ợc xem nh- đang diễn
dịch trên trình chủ (mô hình chuyển giao).
Rich Control
Rich Control là tập các thành phần điều khiển đa năng, chúng chạy trên
Server và có thể tạo ra các phần tử cũng nh- đối t-ợng HTML phức hợp cho
trình khách. Chẳng hạn, Rich Control tạo ra khung l-ới (datagrid), lịch
(calendar), bảng (table), khung nhìn (list view). Rich Control còn cho phép
ràng buộc dữ liệu và xử lý dữ liệu t-ơng tự nh- ta đang viết một ứng dụng để
bàn Web Services (các dịch vụ Web).
Web Services có thể thay thế cho DLL, COM, DCOM tr-ớc đây. Trang
ASP.NET có thể không cần hiển thị kết xuất cho trình khách. Chúng hoạt
động nh- những ch-ơng trình xử lý yêu cầu ở hậu cảnh. Ví dụ nh- trong
ASP.NET của ta có thể là một lớp đối t-ợng cung cấp ph-ơng thức tự trả về
giá trị nào đó khi nhận đ-ợc yêu cầu từ trình khách.
Cấu hình và phân phối
Đơn giản và dễ dàng với các tập tin (Web.config) cấu hình theo định
dạng văn bản XML. Các thành phần đối t-ợng không còn phải đăng ký với hệ
thống tr-ớc khi sử dụng nữa (không còn dùng đến regsvr 32.exe nh- đà sử
dụng COM, DLL, DCOM). Ta chỉ cần copy các trang ASP.NET hay các đối
t-ợng lên máy chủ, chỉ ra vị trí của chúng. Ch-ơng trình cũng nh- dịch vụ của
ta đà có thể sẵn sàng để sử dụng.
Trạng thái Session

Sinh viên thùc hiƯn: Ngun ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn


15


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

Tự động quản lý trạng thái của đối t-ợng Session hay Application, ta cã
thĨ l-u néi dung cđa Session hay Application của một ứng dụng đặc thù nào
đó xuống các file trên đĩa để sử dụng lại.
Xử lý lỗi
Xử lý lỗi (debug) và lần vết (tracing) và các công cụ gỡ lỗi lần vết
thông tin đ-ợc nâng cấp và đáng tin cậy hơn. Mỗi trang tài liệu có thể sử dụng
một trang xử lý lỗi riêng biệt và kết xuất nội dung của biến để theo dõi ngay
trong quá trình thực thi trang. Các trình gỡ lỗi debug đ-ợc tích hợp sử dụng
cho môi tr-ờng đa ngôn ngữ Visual Basic, C++, C#. Ta có thể tạo ra các
thành phần đối t-ợng từ C++,C# và triệu gọi chúng bằng ngôn ngữ Visual
Basic.NET theo cú pháp.
Quản lý bảo mật
Quản lý bảo mật (Security management), chúng ta có thể tận dụng các
dịch vụ đăng nhập (login) tùy biến cho trang tài liệu ASP.NET theo phong
cách của Web hoặc cơ chế đăng nhập và kiểm tra quyền xuất dựa trên hệ
thống bảo mật của hệ điều hành.
Tùy biến vùng đệm trên trình chủ
Bằng cách sử dụng tùy biến vùng đệm trên trình chủ (Custom Server
Caching) của kiến trúc ASP.NET đ-ợc quản lý rất linh động. Ta có thể tự tạo
các vùng đệm riêng chứa một kiểu giá trị và đối t-ợng trong quá trình hoạt
động của trang nhằm tăng tốc cho ứng dụng.

Một tập các đối t-ợng
ASP.NET hỗ trợ một tập phong phú các th- viện, lớp và đối t-ợng,
nhằm phục vụ cho hầu hết những gì mà các nhà phát triển ứng dụng cần đến
khi làm việc với ASP.NET. Bằng các th- viện này, công việc viết ứng dụng
cho Web trở nên dễ dàng và đơn giản hơn bao giờ hết. Ví dụ nh- ta có thể sử
dụng các thành phần đối tượng Send Mail để gửi nhận th-, đối t-ợng mÃ
hóa và giải mà thông tin, đối t-ợng đếm số ng-ời truy nhập trang Web
(Counter), đối t-ợng truy xuất dữ liệu ADO, đối t-ợng truy nhập các dịch vụ
Sinh viên thực hiện: Nguyễn Thị Bính - Lớp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

16


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

mạng, đối t-ợng đọc ghi trên hệ thống NTFS, đối t-ợng ghi ra logfile của hệ
điều hành,
Các đối t-ợng nội tại khác nhau nh-: Request, Response, Form,
Cookies, Server Variables đều đ-ợc giữ lại và hoàn toàn t-ơng thích với ASP.
Tuy nhiên ASP.NET đà cung cấp thêm cho những đối t-ợng này rất nhiều
thuộc tính và ph-ơng thức mới giúp nâng cao khả năng xử lý cho ứng dụng.
2.3 .NET FrameWork và trang ASP.NET
2.3.1 Giới thiệu .NET FrameWork
.NET FrameWork là cơ sở hạ tầng bằng việc cung cấp cho ng-ời dùng
cách thức sử dụng đa ngôn ngữ lập trình để truy cập thông tin, file, hoặc các

ch-ơng trình của họ ở mọi lúc mọi nơi trên mọi cấu hình phần cứng và thiết
bị. Tâm điểm của .NET FrameWork là CLR (Comm Language Runtime) và tập
phân cấp các bộ th- viện hợp nhất và ASP.NET . CLR quản lý thực thi của
đoạn mà .NET và cung cấp các dịch vụ tạo quá trình phát triển ch-ơng trình
ứng dụng dễ dàng hơn. Các trình biên dịch và các công cụ làm cho cho năng
của th- viện thực thi runtime trở nên phong phú và hiệu quả hơn. Ngoài ra,
dịch vụ Web trong .NET FrameWork cho phÐp ta ph¸t triĨn øng dơng Internet
hay Intranet trong hiện tại lẫn t-ơng lai bằng bất cứ ngôn ngữ lập trình và truy
cập đến hệ thống bất kỳ. CLR cung cấp sự dễ dàng cho các nhà phát triển
Visual Basic .NET khi thiết kế và xây dựng ứng dụng mà những đối t-ợng
của chúng có thể t-ơng tác với các đối t-ợng đ-ợc viết bằng ngôn ngữ khác.
Sự t-ơng tác này có thể bởi vì các trình biên dịch ngôn ngữ và các công cụ
phát triển h-ớng đến sử dơng CLR víi mét hƯ thèng kiĨu d÷ liƯu chung định
nghĩa bởi th- viện runtime.

Sinh viên thực hiện: Nguyễn Thị BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

17


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

Hỡnh 2-1: Kiến trúc .NETFrame
Ta cã thĨ tham kh¶o tÊt c¶ những thành phần cấu thành trong
.NETFrameWork nh- hình 2-1, mức trên cùng là trình biên dịch Visual Basic

hoặc các trình biên dịch của các ngôn ngữ khác trong bộ Visual Studio.NET.
trong h×nh 2-1, cịng cho biÕt ta cã thĨ sư dụng Visual Studio .NET kết hợp với
môi tr-ờng phát triển (Intergrated Development Environmrnt - IDE) để lập
trình ASP.NET, Visual Basic C++, C# …CLS – Common Language
Specification Web Service User Interface Data and XML Base Class Library
CLR - Common Language Runtime Visual Studio.NET NETFrameWork
.NET FrameWork còn kết hợp mô hình đơn giản, dễ sử dụng với các giao thức

Sinh viên thực hiƯn: Ngun ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

18


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

mở và biến đổi đ-ợc của Internet. Để đạt đ-ợc điều này, .NE FrameWork bao
gồm các đặc điểm sau:
Sự hợp nhất thông qua các chuẩn Internet và hỗ trợ các chuẩn Web
Service: Cho phÐp giao tiÕp víi mäi øng dơng ph¸t triển trên cơ sở hạ tầng bất
kỳ mà không cần biết đến chi tiết bên trong cơ sở hạ tầng đó thông qua định
dạng XML bằng nghi thức SOAP (Simple Object Access Protocol).Khả năng
biến đổi đ-ợc: Đa số các hệ thống lớn đang sử dụng trên thế giới đ-ợc xây
dựng trên kiến trúc không đồng bộ. .NET FrameWork cho phép chúng ta xây
dựng có khả năng biến đổi và giao tiếp với nhau giữa các kiến trúc khác nhau.
Hỗ trợ nhiều ngôn ngữ: Những nhóm lập trình sử dụng ngôn ngữ lập

trình khác nhau để phát triển ứng dụng do chúng có những tính -u việt của
từng loại. .NETFrameWork cho phép trao đổi và giao tiếp giữa các hệ thống
đ-ợc xây dựng trên các ngôn ngữ lập trình khác nhau. Ngoài ra, chúng ta có
thể sử dụng lại những ứng dụng đang tồn tại mà không cần phải xây dựng lại
từ đầu.
Bảo mật tốt hơn: Bảo mật là một trong những vấn đề gây mất nhiều thời
gian của ng-ời làm tin học. Kiến trúc bảo mật của .NETFrameWork đ-ợc
thiết kế từ d-ới lên để đảm bảo các ứng dụng và dữ liệu đ-ợc bảo vệ tinh dựa
trên mô hình evedencebase (bằng chứng).
Kế thừa những dịch vụ của hệ điều hành: .NETFrameWork tận dụng lợi
thế đa dạng và phong phú của các thành phần trong hệ điều hành đang có để
cung cấp cho ng-ời sử dụng theo cách thân thiện và dễ sử dụng hơn. Tách biệt
giữa mà nguồn (code-behind) và thành phần là một phần quan trọng của
.NETFrameWork. Ngoài ra, .NET FrameWork biên dịch trang ASP.NET
thành tập tin DLL (Dynamic Link Library) khi đ-ợc gọi lần đầu nh- hình 2-2,
thay vì thông dịch chúng nh- từng thực hiện trong ASP 3.0.
2.3.2. Biên dịch trang ASP.NET
Khi ng-ời sử dụng gọi trang ASPX lần đầu tiên, IIS triệu gọi trình biên
dịch trang ASPX (trang code-behind) thµnh tËp tin Class. KÕ tiÕp, tËp tin Class
Sinh viên thực hiện: Nguyễn Thị Bính - Lớp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

19


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp


này đ-ợc biên dịch thành tập tin DLL. Sau đó, trang DLL thực thi và trả về kết
quả cho ng-ời sử dụng.

ASPX
Engine

Reques
t
Request

Tập
tin
ASPX

Respons
RRRRRR
Respons
RReRespo

Generate

Instantiate
Compile

Codebehind
Class

Tập
Tin

Class

Tập
tin
DLL

ns

Instantiate
Process and Render

Respons
Hình 2-2: Quá trình biên dịch trang ASP.NET
Trong tr-ờng hợp ng-ời sử dụng gọi lại trang ASPX lần kế tiếp, thì tập tin
DLL sẽ đ-ợc gọi và thực thi để trả kết quả về cho ng-ời sử dụng. Nh- vậy,
trang ASPX sẽ biên dịch lại tập tin DLL khi chúng tìm thấy cấu trúc của nó
thay đổi hoặc chúng không tìm thấy tập tin DLL t-ơng ứng trong th- mục có
tên Temporary ASP.NET Files nh- hình 2-3.
Sinh viên thùc hiƯn: Ngun ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

20


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp


Tóm lại, khi ng-ời sử dụng truy cập trang ASPX vào lần đầu tiên th-ờng
chậm., nh-ng nếu ng-ời sử dụng truy cập trang ASP.NET đó lần kế tiếp thì
quá trình này sÏ x¶y ra nhanh chãng. L-u ý r»ng, ta cã thể tìm thấy các tập tin
DLL đ-ợc biên dịch từ trang ASPX t-ơng ứng nh- hình 2-2 trong th- mục
Temporary ASP.NET Files thuộc th- mục Microsoft.NET.
2.3.3. Các đối t-ợng ASP.NET
1. Đối t-ợng Request
T-ơng tự nh- đối t-ợng Session, đối t-ợng Request đ-ợc cài đặt trong
lớp HttpReques thuộc không gian tên System.Web. Tất cả thuộc tính và
ph-ơng thức đang tồn tại trong ASP đều đ-ợc hỗ trợ trên ASP.NET. T-ơng tự
nh- trong đối t-ợng Session, cấu trúc của đối t-ợng Request có một vài thay
đổi cùng với một số thuộc tính và ph-ơng thức mới. Thuộc tính và ph-ơng
thức của Request thể hiện trong bảng sau:
Thuộc tính,

TT

Diễn giải

ph-ơng thức
1

FilePa filepath trả về đ-ờng dẫn ảo của yêu
Filepath

cầu, thuộc tính n này t-ơng đ-ơng với
SCRIPT-NAME trong ASP.

2


Trả về HttpFileCollection của tập tin nhiều
Files

tập tin đ-ợc tải lên Server (sử dụng cho dạng
multi-part/forms)

3

Trả vỊ mét tËp d÷ liƯu cđa néi dung tõ Form
Form

(NameValueCollection). Cách truy cập tập
dữ liệu này khác với truy cập tập dữ liệu từ
Form của ASP.

4

Params nh- trình bày trong ch-ơng tr-ớc,
Params

thuộc tính này sử dụng để lấy giá trị của
ph-ơng thức trong Form, QueryString,
ServerVariable hay Cookie. QueryString,

Sinh viên thực hiƯn: Ngun ThÞ BÝnh - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

21



C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

ServerVariable hay Cookie.
5

6

7

8

9

Path đ-ờng dẫn ảo của yêu cầu, t-ơng đ-ơng
Path

với PATH_INFO trong ASP.
Đ-ờng dẫn ảo của yêu cầu, t-ơng đ-ơng víi

PathInfo

PATH_INFO trong ASP.
§-êng dÉn vËt lý cđa th- mơc gèc, t-ơng

PhysicalApplicationPath


đ-ơng với APPL_PHYSICAL_PATH.
Đ-ờng dẫn vật lý của yêu cầu, t-ơng đ-ơng

PhysicalPath

với PATH_TRANSLATED trong ASP.
Trả về một tập dữ liệu của nội dung từ

QueryString

QueryString (NameValueCollection).
Cách truy cập tập dữ liệu này khác với truy
cập tập dữ liệu từ Form của ASP. Tham khảo
Request Collection trong phần kế tiếp.

10
11

Dung l-ợng của Stream trong luồng dữ liệu
TotalBytes
Đối t-ợng Url chứa đựng chi tiết của yêu cầu.
Url

Đối t-ợng Url (từ không gian tên System) bao
gồm các thông tin chi tiết nh- Port, DNS,

12

13


14
15

Địa chỉ IP của ng-ời sử dụng, t-ơng đ-ơng
UserHostAddress

với REMOTE_ADDR trong ASP
Tên DNS của ng-ời sử dụng, t-ơng đ-ơng với

UserHostName

REMOTE_NAME trong ASP
Chuyển đổi đ-ờng dẫn ảo thành đ-ờng dẫn

MapPath

vật lý
L-u yêu cầu HTTP vào đĩa

SaveAS

Sinh viên thực hiện: Nguyễn Thị Bính - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

22


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng


KHóa luận tốt nghiệp

2. Request Collection trong ASP
Đối t-ợng Request cho phép truy cập đến nội dung của Form hay
QueryString.
3. Đối t-ợng Respone
T-ơng tự nh- hai đối t-ợng đà trình bày ở trên, tất cả các thuộc tính và
ph-ơng thức tr-ợc đây của đối t-ợng Response đều đ-ợc sử dụng lại. tuy
nhiên, khi sử dụng đối t-ợng Response trong ASP.NET, ta cần quan tâm một
số thuộc tính và ph-ơng thức mới. L-u ý rằng, trong ASP ta khai báo đối
t-ợng Response.Write nh- sau:
Response.Write Str
Trong ASP.NET, phát biểu trên đ-ợc viết lại nh- sau:
Response.Write (Str)
Ta có thể tham khảo chi tiết về đối t-ợng Response trong ASP 3.0. Bảng
2-4 sau sẽ trình bày một số thuộc tính, ph-ơng thức mới và thuộc tinh, ph-ơng
thức thay đổi trong ASP.NET. thuộc tính và ph-ơng thức của Response đ-ợc
trình bày trong bảng sau:

TT
1

Thuộc tính,
ph-ơng thức
Expires

Diễn giải
Mặc dù nó còn hỗ trợ, nh-ng nó lại đ-ợc
đối


nghịch

trong

ph-ơng

thức

của

HttpCachePolicy.
2

Redirect

3

Write

4

WriteFile

Chuyển h-ớng địa chỉ file trong cïng øng
dơng hay URL kh¸c trong lóc thi hành.
Ghi thông tin từ các kiểu dữ liệu nh- Char,
Object, String, Array ra trang Web.
Ghi mét lng d÷ liƯu ra tập tin chỉ định.


Sinh viên thực hiện: Nguyễn Thị Bính - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

23


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

KHóa luận tốt nghiệp

4. Đối t-ợng Application
Trong ASP, chúng ta sử dụng đối t-ợng Application để trao đổi thông tin
giữa các phiên làm việc của các trình duyệt đối với trình chủ. Ví dụ trong
tr-ờng hợp ta muốn sử dụng biến Counter đếm số lần truy cập trang ASP của
mọi trình duyệt. Biến này phải có hiệu lực trên toàn ứng dụng. Khi đó, mọi
trình duyệt đều có thể l-u trữ và truy cập đến biến này.
Đối

t-ợng

Application

trong

ASP.NET

đ-ợc


cài

đặt

trong

lớp

HttpApplicationState thuộc không gian tên System.Web. Mặc dù, ASP.NET hỗ
trợ hầu hết các choc năng của ASP bằng hai Contents vµ StaticObjects
Collection, nh-ng chóng cịng cã mét sè khác nhau mà chúng ta cần tìm hiểu.
Chẳng hạn, hai phat biểu nh- sau là t-ơng đ-ơng.
Application.Contents.Remove(Counter)
Application.Remove(Counter)
Ngoài ra, đối t-ợng này có một số thuộc tính và ph-ơng thức mới nh- trình
bày trong bảng:

1

Thuộc tính,
TT ph-ơng thức

Diễn giải

AllKeys

Trả về một mảng dạng chuỗi chứa đựng tên
của các phần tử trựng thái ứng dụng.

2


Count

Trả về số phần tử trong ứng dụng.

3

Add

Thêm phần tử váo ứng dụng.

4

Clear

Xóa tất cả các phần tử trong ứng dụng.

5

Get

Trả vè một phần tử chỉ định.

6

GetKey

Trả về khóa của phần tử chỉ định.

7


Set

Cập nhật giá trị của phần tử trong ứng
dụng.

Sinh viên thực hiện: Nguyễn Thị Bính - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

24


C.33.44.55.54.78.65.5.43.22.2.4..22.Tai lieu. Luan 66.55.77.99. van. Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22. Do an.Tai lieu. Luan van. Luan an. Do an.Tai lieu. Luan van. Luan an. Do an

GVHD: Hồ Thị Huyền Th-ơng

5.

KHóa luận tốt nghiệp

Đối t-ợng Secssion
Đối t-ợng Session đ-ợc cài đặt trong lớp HttpSessionState thuộc không

gian tên System.Web.SessionState. Hai thuộc tính Concent và StaticObjects
t-ơng tự nh- trong đối t-ợng Application. Cấu trúc của đối t-ợng này khác với
cấu trúc trong ASP, nh-ng chúng làm việc t-ơng tự nh- ta dà khai báo và sử
dụng đối t-ợng Session trong ASP. Chẳng hạn hai phát biểu sau đây có tác
dụng nh- nhau:
Session.Remove(Counter)
Session.Contents.Remove(Counter)

Thuộc tính và ph-ơng thức của Sission:

TT

Thuộc tính,
ph-ơng thức

Diễn giải

1

Count

Trả về số phần tử trong Session (phiên làm việc)

2

Clear

Xóa tất cả các phần tử trong Session

SessionID

Trả về một giá trị là chuỗi mà trình chủ cấp cho

3

Session (trong ASP giá trị này là một Long)
Remove


Trong ASP, ta cã thĨ xãa mét Session b»ng c¸ch
cung cÊp chỉ mục của Session hay tên của
Session. Đối với ASP.NET ta có thể xóa Session

4

bằng cách chỉ định tên. Trong tr-ờng hợp ta
muốn xóa một phần tử trong Session theo chỉ
mục, ta phải sử dụng ph-ơng thức RemoveAt(i)
RemoveAt

5

Khi ta muốn xóa một phần tử trong Session theo
chỉ mục, ta phải sử dụng ph-ơng thức
RemoveAt(i)

Sinh viên thực hiện: Nguyễn Thị Bính - Líp 46B3 Khoa CNTT
@edu.gmail.com.vn.bkc19134.hmu.edu.vn

25


×