Nghiên cứu ngôn ngữ lập trình ASP.NET - Pdf 10

ASP.NET

Chuyên đề
Nghiên cứu ngôn ngữ lập trình ASP.NET
1
Lý Bình Nguyên 8/6/2007
1
ASP.NET
Mục lục
Nội dungTrang
I. Giới thiệu sơ qua về .NET
I.1..Nguồn gốc của .NET
I.2.Định nghĩa .NET
I.3.Mục tiêu của .NET
I.4 .Các dịch vụ của.NET
I.5.Tác động của .NET đến người làm CNTT
I.6.Tác động của .NET đến người dùng
I.7. Cơ sở hạ tầng của .NET
II.Nghiên cứu về ASP.NET
II.1.Giới thiệu chung về ASP.NET
II.2.Ứng dụng của ASP.NET
A.Khái quát.
B.Tập tin Global.asax.
C.Làm việc với thực thể HttpApplication
D. Lập trình lại (Overriding) phương thức Init và Dispose.
E. Sử dụng các Module trong tập tin Global.asax.
II.3.Cấu hình ASP.NET
A .Khái quát

17
19
20
20
22
23
23
26
27
29
30
31
32
35
35
35
37
37
38
38
I.Giới thiệu sơ qua về .NET:
2
Lý Bình Nguyên 8/6/2007
2
ASP.NET
I.1.Nguồn gốc của .NET:
Đầu năm 1998, sau khi hoàn tất version 4 của Internet Information Server (IIS), một đội
lập trình ở Microsoft nhận thấy họ còn rất nhiều sáng kiến để kiện toàn IIS. Họ bắt đầu
thiết kế một architecture mới dựa trên những ý đó và project đuợc đặt tên là Next
Generation Windows Services (NGWS.(

Xét cho cùng, Internet là một phương tiện truyền thông không thể tin nổi cho phép thực
hiện thương mại điện tử. Trong khi đây là thực tế, thì một cái nhìn khác về Internet và
thương mại điện tử là điều cần thiết. Ngày nay Internet cung cấp những giải pháp thương
mại điện tử thực sự hiệu quả, nhưng trước hết chúng ta hãy khảo sát mô hình của Internet.
Internet hoạt động trên mô hình khách/chủ (client/server) mà ở đó những khách hàng
(client) phải tương tác với các máy phục vụ (server) để xem dữ liệu. Những trình duyệt đã
được phát triển để thông dịch mã HTML và trả lại trang Web cho người dùng. Về cơ bản
việc sử dụng trình duyệt và Internet là công việc không thể thay đổi. Bạn có thể nhập
thông tin vào trong các CSDL thông qua trình duyệt của bạn, nhưng phần lớn bạn không
thể điều khiển việc sử dụng hay thao tác thông tin. Bạn phải tương tác với các máy phục
vụ Web và các CSDL của chúng, và nhiều ứng dụng Web thường không tương thích. Nếu
bạn sử dụng những thiết bị truy nhập Internet khác nhau như PC hay cell phone thì cách sử
dụng những thiết bị đó là rất khác nhau. Những thiết bị này không tích hợp tốt với nhau,
thậm chí ngay cả trên Internet. Từ một viễn cảnh công việc kinh doanh, nhiều công nghệ
thương mại điện tử để lại những hệ thống đang tồn tại đằng sau chúng, đây quả là một vấn
đề tốn kém và khó khǎn.
Ý tưởng .NET được thiết kế để hỗ trợ chúng ta tiến tới một Web thân thiện hơn, tích hợp
tốt hơn, một nơi mà ở đó các ứng dụng và các quá trình giao dịch có thể tương tác với
nhau một cách tự do không phụ thuộc vào chương trình và nền tảng. Tóm lại, .NET làm
cho thông tin trên Web có thể được tiếp cận một cách dễ dàng: bạn có thể sử dụng bất kì
thiết bị nào, trên bất kì nền tảng nào. .NET còn có thể hỗ trợ các hệ thống máy phục vụ và
ứng dụng liên lạc với nhau một cách thông suốt (seamlessly) và xây dựng hệ thống tính
toán phân tán trên Web, làm cho Web trở thành một nơi tương tác nǎng động hơn giữa các
dịch vụ Web, các ứng dụng và khách hàng.
I.3.Mục tiêu của .NET
Microsoft .NET trợ giúp loại bỏ các thành phần riêng biệt khỏi một nền tảng và ứng dụng
và như vậy nó cho phép thông tin được trao đổi và xây dựng trên một nền tảng chung hơn.
Bạn có thể nghĩ "Microsoft được lợi gì từ ý tưởng này?". Xét cho cùng, việc tạo ra một
nền tảng (platform) độc lập và nó không cần các sản phẩm của Microsoft để thực thi
(implement) xem ra đã tự phá huỷ. Trên thực tế Microsoft đang ôm một ý tưởng ở đâu đó

vụ này cố gắng để trợ giúp các nhà phát triển xây dựng các ứng dụng .NET. Microsoft
định nghĩa các dịch vụ khối hợp nhất .NET sau đây:
•Authentication: Khi sử dụng các công nghệ Authentication (chứng thực) cũng như
Passport (hộ chiếu) của Microsoft các nhà phát triển tạo ra các dịch vụ cho riêng
mình và bảo vệ các dịch vụ như mong muốn.
•Messaging: Các đặc tính Messaging (truyền thông điệp) của .NET được xây dựng
trên MSN Hotmail Web ã dựa vào dịch e-mail, Microsoft Exchange Server 2000, và
5
Lý Bình Nguyên 8/6/2007
5
ASP.NET
Instant Messaging (truyền thông điệp tức thì). Những hệ thống truyền thông điệp
này và những đặc tính có thể được phân tán đến bất kì thiết bị nào do tính không
phụ thuộc nền tảng của chúng.
•Personalized Experience (kinh nghiệm cá nhân): .NET cho người dùng nhiều
kiểm soát hơn thông qua các qui tắc xử lý dữ liệu và quyền ưu tiên mà nó xác định
rõ dữ liệu phải được di chuyển và quản lý như thế nào.
•XML (Extensible Markup Language): XML được xem như một ngôn ngữ chung
mà nó cho phép dữ liệu được di chuyển từ dạng này sang dạng khác trong khi bảo
trì tính toàn vẹn của nó. Cùng với SOAP
[5]
, XML có thể cung cấp một dịch vụ linh
hoạt để quản lý và điều khiển dữ liệu.
Một trong những thực thi (implementation) đầu tiên được đề nghị của dịch vụ .NET là
Microsoft HailStorm. HailStorm là một dịch vụ trung tâm-người dùng (user-centric), nó
cung cấp cho những người-dùng-cuối khả nǎng lưu trữ thông tin cá nhân như các cuộc
hẹn, lịch hay các thông tin tài chính. Kết quả việc một người dùng đǎng kí dịch vụ này là
thông tin được chia sẻ với các ứng dụng khác (thông tin dùng chung) theo ý muốn của họ,
và nó trở thành một phần của người dùng khi điều khiển các hoạt động trên Web. Trong
thời gian tới bạn sẽ được tiếp cận các dịch vụ tương tự được đề xuất trên Web bởi các

tính. Một dịch vụ Web hoàn tất một vài kiểu giao dịch và trao đổi thông tin. Khi xây dựng
trên XML, các dịch vụ Web có thể được sử dụng bởi bất kỳ người nào với bất kỳ thiết bị
đơn lẻ nào tại bất kỳ thời điểm đã cho nào. Đặc tính này cho phép bất cứ số lượng tiến
trình chuyên biệt (đặc trưng riêng biệt cho từng ứng dụng) nào xuất hiện liên tục
(seamlessly) trên Internet không có sự can thiệp của người dùng.
Quy trình dịch vụ Web được hoàn thành bởi việc sử dụng cả hai đặc tính chương trình
ghép nối lỏng và ghép nối chặt. Qui trình nghiệp vụ của việc tính toán n-tier (ghép nối
chặt) được kết hợp với các chuẩn truyền thông điệp ghép nối lỏng và các phương pháp
truy nhập dữ liệu trên Internet. Do ý tưởng .NET được tìm thấy trên cơ sở của XML và
khái niệm dịch vụ Web, các nhà phát triển có một cách mới để tạo ra các ứng dụng mà nó
hoạt động và tích hợp dễ dàng hơn. Sự thách thức của các nhà phát triển là tích hợp những
khái niệm đó với cái mà nền tảng .NET được xây dựng trên nó.
Để cho các chuyên gia CNTT khác, ý tưởng .NET sẽ không thay đổi hoàn toàn công việc
quản lý máy phục vụ CNTT. Các chuyên gia CNTT phải nhìn thấy sự giải toả chung trong
việc quản trị bởi vì mô hình tính toán phân tán .NET đã được sẵn sàng, nhưng việc quản lý
7
Lý Bình Nguyên 8/6/2007
7
ASP.NET
các máy phục vụ xí nghiệp (Enterprise server) .NET và các máy trạm sẽ hoạt động phần
lớn theo cùng một cách.
I.6.Tác động của .NET đến người dùng
Nền tảng .NET có thể có tác động sâu sắc đến kinh nghiệm người dùng (theo hướng tích
cực). Trước khi khảo sát khả nǎng này, chúng ta hãy xem xét mô hình tính toán hiện thời.
Hiện tại, việc tính toán người dùng chủ yếu là nằm ở phần cứng và hệ điều hành. Những
người dùng sở hữu những thiết bị phần cứng như PC, laptop hay PDA và họ cài đặt phần
mềm và cấu hình các hệ thống đó. Dữ liệu chủ yếu được quản lý và thao tác (và cả dữ liệu
đã mất) cũng trên các hệ thống đó. Do sự tǎng trưởng của công nghệ, số lượng PC tại gia
và vǎn phòng ngày càng tǎng lên nhanh chóng. Có ai đã từng nghĩ rằng một người dùng có
thể cần đến 13 Gbyte ổ cứng? Mô hình tính toán hiện thời gây ra nhiều vấn đề do số lượng

thành phần cho.NET framework này được giới thiệu sơ lược dưới đây.
1 .Thực thi ngôn ngữ chung CLR (Common Language Runtime(
Tất cả các ngôn ngữ lập trình đều có một runtime (thi hành), một dịch vụ hoạt động cùng
với ngôn ngữ lập trình. Common Language Runtime (CLR là bộ thi hành ngôn ngữ chung)
là một thành phần cốt lõi (cơ bản nhất) của .NET. Nó cung cấp nền cơ sở mà trên đó các
ứng dụng cho. NET được xây dựng. CLR quản lí nhiều khía cạnh của chu trình phát triển
theo quan điểm của người phát triển. Chẳng hạn, khi làm việc với COM, các nhà phát triển
phải lưu tâm đến vấn đề quản lí bộ nhớ, những sự khởi tạo luồng (thread) và loại bỏ nó,
các thành phần bảo mật và những vấn đề tương tự. Điều đó gây ra một số khó khǎn do các
nhà phát triển phải tiêu tốn quá nhiều thời gian vào các vấn đề này. Bộ thi hành ngôn ngữ
chung CLR quản lí tất cả các vấn đề nảy sinh đó một cách tự động và giải phóng cho các
nhà phát triển tập trung vào việc xử lý giao dịch logic. CLR cung cấp một runtime chung
mà nó được sử dụng với tất cả các ngôn ngữ. Thành phần này làm cho .NET có một khả
nǎng "hỗ trợ mọi ngôn ngữ" (language-free.(
2 .Các lớp lập trình hợp nhất (Unified Progrgamming Classes(
Những thư viện lớp lập trình hay các giao diện lập trình ứng dụng (API) được sử dụng bởi
nhiều ngôn ngữ khác nhau. Để sử dụng những ngôn ngữ lập trình khác nhau, các nhà phát
triển nghiên cứu các bộ thư viện lớp khác nhau để làm việc với các ngôn ngữ lập trình
khác nhau. Vấn đề này đã làm chậm quá trình phát triển ứng dụng và làm cho công việc
phát triển trở nên tẻ ngắt và lãng phí khá nhiều thời gian. .NET cung cấp các lớp lập trình
hợp nhất với một bộ API dùng chung cho mọi ngôn ngữ lập trình. Các ngôn ngữ có thể
tương tác với một ngôn ngữ khác và các lớp lập trình hợp nhất này cho phép các nhà phát
triển lựa chọn bất cứ ngôn ngữ nào mà họ muốn trong khi chỉ cần duy nhất một bộ API mà
thôi.
3 .ASP.NET (Active Server Pages .NET(
ASP.NET được sử dụng chung với các lớp lập trình mà nó có thể tạo các ứng dụng Web
một cách dễ dàng cho người lập trình. ASP.NET cung cấp cách truy cập giao diện HTML
9
Lý Bình Nguyên 8/6/2007
9

hoặc chỉnh sửa cấu hình ứng dụng (customize application’s configuration). Tuy nhiên mỗi
loại có một vài khả năng riêng:
10
Lý Bình Nguyên 8/6/2007
10
ASP.NET
Một XML Web Service cung cấp điều kiện (mean) để truy cập các hàm ở server từ xa.
Khi sử dụng Web Service, trong kinh doanh người ta có thể đưa ra các giao diện lập trình
được cùng với dữ liệu, hoặc kết quả kinh doanh, những cái này có thể được nhận, hiệu
chỉnh bởi các ứng dụng client và server. Web Server cho phép trao đổi dữ liệu theo hai
kịch bản (scenarios) client-server và server-client, sử dụng chuẩn HTTP và thông diệp
XML (XML messaging) để di chuyển dữ liệu qua tường lữa (firewall). XML Web Service
có thể được viết bằng mọi ngôn ngữ lập trình, sử dụng mọi mô hình thành phần
(component model), và có thể chạy trên bất kỳ hệ điều hành nào có thể truy cập XML Web
Services.
Mô hình (model) Web Forms và Web Services đều có tất cả các đặt tính của ASP.NET,
đó là sức mạnh của .NET Framework và .NET Framework Common Lanuage Runtime.
Các tính chất và cách sử dụng có thể được phát thảo như sau:
11
Lý Bình Nguyên 8/6/2007
11
ASP.NET
Với người đã có kỹ năng lập trình ASP thì mô hình lập trình mới ASP.NET sẽ rất gần gũi.
Tuy là như vậy nhưng ASP.NET đã có những thay đổi rất đặc biệt so với ASP, ASP.NET đã
có cấu trúc hơn và hướng đối tượng. Thật đáng tiết, điều này có nghĩa là tất cả các trang
ASP đã tồn tại đều phải được chỉnh sửa một vài nơi để có thể chạy dưới ASP.NET. Ngoài
ra, Visual Basic và Visual Basic.NET đã có một sự khác biệt rất lớn, điều này có nghĩa là
các trang được viết bằng Visual Basic Scripting Edition sẽ không thể chuyển trực tiếp sang
ASP.NET, cần thiết phải có một số thay đổi nhất định để có thể chuyển sang ASP.NET .
Truy cập database là kỹ thuật thường được sử dụng để hiển thị dữ liệu trên trang Web của

trong khi giãi quyết sự cố (troubleshooting).Nền .NET Framework và ASP.NET cung cấp
sơ đồ (schemes) chứng nhận(authentication) và cấp phép (authorization) cho ứng dụng
Web, có thể dễ dàng xóa, thêm, hiệu chỉnh sơ đồ.
Cấu hình ứng dụng ASP.NET được lưu trữ trong các tập tin XML chuẩn, hiệu chỉnh dễ
dàng , và có thể mở rộng để phù hợp cho nhu cầu của từng ứng dụng Web.
ASP.NET là phiên bản mới của ASP,ngoài những ưu điểm của ASP, ASP.NET có những
đặc điểm khác và mạnh hơn so với ASP:
Pages: 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ủ Server. Đặc điểm này giảm thiểu thời gian viết
code 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 trong Form, do đó các ứng dụng của ASP.NET còn được gọi là
Web Form.
HTML Server Side Controls: các thành phần điều khiển HTML có khả năng xử
lý ngay trên trình chủ(Server) dựa trên thuộc tính và phương thức tương tự như
cách thức hoạt động của trình khách(client). Những thành phần điều khiển này
còn cho phép ta kết hợp mã xử lý của pages ASP.NET với một sự kiện nào đó
phát sinh phía client được xem như đang diễn ra trên trình server(mô hình
chuyển giao- deligate.(
Rich controls: tập các điều khiển đa năng.Các Rich Controls chạy trên server và
có thể tạo ra các phần tử cũng như các đối tượng HTML phức hợp trên client
(Grid, calendar,table, view,…). Rich controls còn cho phép bạn ràng buộc dữ
liệu và xử lý dữ liệu tương tự như bạn đang viết một ứng dụng desktop thật sự.
Xoá đi biên giới mô hình Client/server.
Web Service: các dịch vụ Web. Trang ASP.NET có thể không cần hiển thị kết
xuất cho client. Chúng hoạt động như những chương trình xử lý yêu cầu ở hậu
13
Lý Bình Nguyên 8/6/2007
13
ASP.NET
cảnh. VD trang ASP.NET nào đó có thể là đối tượng cung cấp phương thức trả

14
Lý Bình Nguyên 8/6/2007
14
ASP.NET
Một ứng dụng được triển khai bằng ASP.NET sẽ thừa hưởng được các thế mạnh của
ASP.NET như: tốc độ nhanh, linh động, an toàn và có tính thực thi cao. Điều này dựa trên
các ưu điểm nổi bật sau của ASP.NET(đứng ở góc độ lập trình:(.
1.Thành phần điều khiển đóng gói các chức năng thường xuyên sử dụng rất tiện
lợi như: quản lý trạng thái (State), kiểm tra dữ liệu nhập(validate), … những
công việc này trứơc đây thường phải viết rất thủ công.
2.Mã nguồn dễ dùng, dễ đọc: Mọi công việc thao tác hay xử lý không cần thiết
trước đây(như kiểm tra tính hợp lệ của dữ liệu, bảo vệ trạng thái của session,…)
đều được chuyển giao cho kiến trúc và bộ khung ASP.NET xử lý. Trang
ASP.NET viết mã ít hơn, ngắn gọn hơn đồng thời cũng thực thi nhanh hơn trang
ASP do trang ASP.NET đã được biên dịch và được đưa vào vùng đệm bộ nhớ
trong suốt quá trình thực thi.
3.Với trang ASP.NET chúng ta có thể tạo trang tài liệu HTML kết xuất phía đầu
cuối đẹp mắt bằng một tập phong phú các thành phần điều khiển giao diện thân
thuộc trong Windows đã được xây dựng lại.
4.Trong ASP.NET không còn phụ thuộc vào ngôn ngữ phi định kiểu như VBScript
nữa, mà nó 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ữ lập trình hiện đại: C++, C#, VB.NET, Perl…,
Ngoài ra, còn có những ưu điểm khác so với ASP thường: Ở trang ASP mã lệnh và giao
diện trộn lẫn với nhau. Khi phát triển những ứng dụng Web lớn, thường các dự án cần
được tách ra làm 2 phần. Một nhóm thiết kế giao diện(Web Designer) và một nhóm viết
lệnh lập trình(coder). Kết quả cuối cùng thường là một sự trộn lẫn giữa phần thiết kế giao
diện và mã lệnh ASP để tạo thành một file chương trình duy nhất. Các trang ASP của ứng
dụng đó rất khó bảo trì khi bạn muốn thêm vào các mã lập trình mới hay thay đổi giao
diện. ASP.NET cho phép tách rời giữa mã lập trình và nội dung tài liệu.
Ngày nay, các thiết bị cầm tay: ĐTDĐ, máy Palm,… thay đổi rất nhanh, đòi hỏi nhu cầu

thể tạo tập tin Global.asax bằng trình thiết kế WYSIWYG, bằng Notepad, hoặc như là
một lớp được biên dịch thành assambly đặt trong thư mục \bin là thư mục con của thư mục
ứng dụng.
Tập tin Global.asax là một tùy chọn, nếu không định nghĩa tập tin Global.asax thì
framework (ASP.NET page framework) sẽ xem như (assumes) không có bất kỳ một event
application handler và event session handler nào được định nghĩa.
16
Lý Bình Nguyên 8/6/2007
16

Trích đoạn Triển khai ứng các ứng dụng ứng WEB Projects:
Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status