ks. p han h u ti ê ks. h uy ch k i thi ê...4 http:// lhu.edu.vn ts. v uz m c lung ks . h uy nh cao...
TRANSCRIPT
http://lhu.edu.vn1 LHULHU
LLÂÂP TP TRIRINH NH WEB ASP.NETWEB ASP.NET
TrTrươương Đng Đaai Hi Hooc Lc Laac Hc Hôông 2009 ng 2009 -- 20102010
Ts. VTs. Vu Đưu Đưc Lungc LungKs. HKs. Huyuynh Cao Tunh Cao Tuâânn
Ks. PKs. Phan Hhan Hưưu Tiu Tiêêpp
Chương Chương 1: 1: GiGiơơi Thii Thiêêuu
http:// lhu.edu.vnhttp:// lhu.edu.vn2
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
NNôôi dung gii dung giơơi thii thiêêuu
Phân biêt Web tinh va Web đông Mô hinh Client- side, Server-side Công nghê lâp trinh web Giơi thiêu .NET Muc đich .NET ASP & ASP.NET Cơ ban vê ASP.NET
http:// lhu.edu.vnhttp:// lhu.edu.vn3
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Phân biPhân biêêt web tt web tiinh nh –– web đ web đôôngng
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 webDung nhiêu ngôn ngư lâp trinh khac nhau va nhiêu hê cơ sơ dư liêu khac nhauThông tin luôn mơi, co ti nh tương tac cao, d ê hiêu chinh
Thiết kế đ ồ hoạ đ ẹpTốc độ truy cập nhanhChi phí đầu tư thấp
Ưu điểm
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.
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.
Định nghĩa
Website độngWebsite tĩnh
http:// lhu.edu.vnhttp:// lhu.edu.vn4
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Phân biPhân biêêt web tt web tiinh nh –– web đ web đôôngng
Chi phí đầu tư caoDễ bị tấn công
Khó khăn trong vi ệc thay đổi cập nhật Thông tin không có tính linh hoạt, không thân thiện với người dùngKhó tích hợp, nâng cấp, mở rộng
Khuyết điểm
Website độngWebsite tĩnh
http:// lhu.edu.vnhttp:// lhu.edu.vn5
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Mô hMô hiinh Clientnh Client-- SideSide
Lâp trinh 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.
http:// lhu.edu.vnhttp:// lhu.edu.vn6
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Mô hMô hiinh Clientnh Client-- SideSide
Đặ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
http:// lhu.edu.vnhttp:// lhu.edu.vn7
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Mô hMô hiinh Clientnh Client-- SideSide
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
http:// lhu.edu.vnhttp:// lhu.edu.vn8
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Mô hMô hiinh Clientnh Client-- SideSide
Đặ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
Tom lai : 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
http:// lhu.edu.vnhttp:// lhu.edu.vn9
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
TTôông quan công nghng quan công nghê ê llââp Tp Tririnh webnh web
HTML ( HyperText Markup Language)
Trang web HTML la 01 tâp tin văn ban đươc viêt băng ngôn ngư HTML, ngôn ngư nay con đươc biêt đên vơi tên goi: ngôn ngư đanh dâu văn ban
Ngôn ngư HTML sư dung cac ky hiêu quy đinh săn (đươc goi la Tag) đê tri nh bay nôi dung văn ban
Nôi dung + Đinh dang = Kêt qua hiên thi
http:// lhu.edu.vnhttp:// lhu.edu.vn10
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
TTôông quan công nghng quan công nghê ê llââp Tp Tririnh webnh 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
http:// lhu.edu.vnhttp:// lhu.edu.vn11
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
TTôông quan công nghng quan công nghê ê llââp Tp Tririnh webnh 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
http:// lhu.edu.vnhttp:// lhu.edu.vn12
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
GiGiơơi thii thiêêu .NETu .NET
.NET la gi? A new software platform for the desktop and the Web
Nguôn gôc cua .NET Hê điêu hanh: tâp hơp cac COM (Component Object
Model) tương tac vơi nhau. Chương trinh=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
http:// lhu.edu.vnhttp:// lhu.edu.vn13
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
GiGiơơi thii thiêêu .NETu .NET
.NET Platform la gi ? .NET Platform bao gôm .NET Framework va nhưng công cu đươc dung đê xây dưng, phat triên ưng dung va di ch vu ASP.NET
Nhưng san phâm công nghê .NET cua Microsoft bao gôm: MSN.NET, OFFICE.NET, VISUAL STUDIO.NET, WINDOWS SERVER 2003
VISUAL STUDIO.NET la bô phân mêm đươc dung đê xây dưng va pha t triên cac ưng dung bao gôm cac ngôn ngư lâp trinh: C++.NET, Visual Basic.NET, ASP.NET, C# va j#.
Tât ca ca c ngôn ngư na y đêu đươc xây dưng trên nên .NET Framework, do đ o cu pha p cơ ban cua nhưng ngôn ngư na y tương tư nhau.
http:// lhu.edu.vnhttp:// lhu.edu.vn14
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
GiGiơơi thii thiêêu .NETu .NET
CaCac bc bô ô phphâân cn chihinh cnh cuua Microsoft NET Frameworka Microsoft NET Framework
http:// lhu.edu.vnhttp:// lhu.edu.vn15
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
GiGiơơi thii thiêêu .NETu .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
http:// lhu.edu.vnhttp:// lhu.edu.vn16
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
GiGiơơi thii thiêêu .NETu .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.
http:// lhu.edu.vnhttp:// lhu.edu.vn17
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
GiGiơơi thii thiêêu .NETu .NET
.NET Framework la gi ? .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
http:// lhu.edu.vnhttp:// lhu.edu.vn18
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
MuMuc đc điich cch cuua .NETa .NET
Mô hinh đông nhât cho lâp trinh Form(Desktop) va Web
http:// lhu.edu.vnhttp:// lhu.edu.vn19
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
MuMuc đc điich cch cuua .NETa .NET
Trươc đây: rât han chê .NET: binary compatibility between more than 20 languges
(C#, C++, VB.NET, Java, Eiffel, Fortran, Cobol, ML, Haskell, Pascal, Oberon, Perl, Python, ...)
http:// lhu.edu.vnhttp:// lhu.edu.vn20
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
MuMuc đc điich cch cuua .NETa .NET
Tương tac giưa cac ngôn ngư lâp trinh:
http:// lhu.edu.vnhttp:// lhu.edu.vn21
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
LLợợi i iich dch dùùng CILng CIL
http:// lhu.edu.vnhttp:// lhu.edu.vn22
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
LLợợii i ichch ccủủaa vviiệệcc ssửử ddụụngng ASPASP
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
http:// lhu.edu.vnhttp:// lhu.edu.vn23
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
NhNhưưng bng bâât lt lơơi khi si khi sư duư dung ASPng 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
http:// lhu.edu.vnhttp:// lhu.edu.vn24
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
GiGiơơi thii thiêêu ASP.NETu 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 la ky thuât lâp trinh va pha t triên ưng dung web ơ phia server (Server – side ) dưa trên nên tang cua 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ư dung ky thuât lâp trinh ơ phi a server, ma lênh ơ phia server se đươc biên dich va thi hanh tai Web server.
Tât ca cac xư ly lênh ASP.NET đêu đươc thưc hiên tai server do đo goi la ky thuât lâp trinh ơ phia server
http:// lhu.edu.vnhttp:// lhu.edu.vn25
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
CCáác c đđiiểểm m nnổổi i bbậật t ccủủa ASP.NETa 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 vi pha i đoc va thông dich môi khi trang web đươc yêu câu, ASP.NET biên dich nhưng trang web đông thanh tâp tin DLL ma Server co thê thi hanh nhanh chong va hiêu qua.
ASP.NET hô trơ manh me bô thư viên phong phu va đa dang cua .NET Framework, lam viêc vơi XML, Web Service , truy câp cơ sơ dư liêu qua ADO.NET.
ASPX va ASP co thê cung hoat đông trong môt ưng dung ASP.NET sư du ng phong cach lâp trinh mơi: code behide.
Tach code riêng, giao diên riêng => Dê quan ly, dê đoc va bao tri
Kiên truc lâp trinh giông ưng dung trên Windows
http:// lhu.edu.vnhttp:// lhu.edu.vn26
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
CCáác c đđiiểểm m nnổổi i bbậật t ccủủa ASP.NETa ASP.NET
Hô trơ trang thai cua cac control Tư đông phat sinh ma HTML cho cac Server control tương
ưng vơi tưng loai Browser Hô trơ nhiêu cơ chê cache Triên khai cai đăt không cân lock, không c ân đăng ky DLL.
Cho phep nhiêu hinh thưc câu hinh ưng dung. Hô trơ quan ly ưng dung ơ mưc toan cuc Global.aspx co nhiêu sư kiên hơn Quan ly session trên nhiêu Server, không cân Cookies
http:// lhu.edu.vnhttp:// lhu.edu.vn27
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
KhaKhac bic biêêt git giưưa ASP.a ASP.NET vNET va a ASPASP
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).
http:// lhu.edu.vnhttp:// lhu.edu.vn28
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
CaCach thch thưưc lc laam vim viêêc cc cuua HTMLa HTML
http:// lhu.edu.vnhttp:// lhu.edu.vn29
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Cach Thưc Cua Trang Web Đông
http:// lhu.edu.vnhttp:// lhu.edu.vn30
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
CaCach thch thưưc lc laam vim viêêc cc cuua trang ASPXa trang ASPX
http:// lhu.edu.vnhttp:// lhu.edu.vn31
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
CCàài đi đặặt ct cáác chương trc chương trìình đòi hnh đòi hỏỏi cho i cho ASP.NETASP.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)
http:// lhu.edu.vnhttp:// lhu.edu.vn32
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
IIS IIS –– Internet Information ServerInternet Information Server
IIS co thê sư dung như web server, kêt hơp vơi ASP đê xây dưng cac ưng dung web, tân dung cac điêm manh cua Server-side script, COM component… theo mô hinh 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 co rât nhiêu phiên ban Phiên ban Windows 2000 tich hơp IIS 5.0 Windows XP tich hơp IIS 5.5 Windows XP.Net Server tich hơp IIS 6.0, hô trơ cac tinh năng
danh cho .NET cua ASP.NET va Web Service
http:// lhu.edu.vnhttp:// lhu.edu.vn33
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
IIS IIS –– Internet Information ServerInternet 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
Hoat đông cua 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ị.
http:// lhu.edu.vnhttp:// lhu.edu.vn34
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
CCàài đi đặặt IIS trong WinXPt 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:
http:// lhu.edu.vnhttp:// lhu.edu.vn35
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
GiGiớới thii thiệệu vu vềề WEB MATRIXWEB 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)
http:// lhu.edu.vnhttp:// lhu.edu.vn36
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
KhaKhac bic biêêt git giưưa VISUAL STUDIO.a VISUAL STUDIO.NET vNET vaaWEB MATRIXWEB 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
http:// lhu.edu.vnhttp:// lhu.edu.vn37
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Phân loPhân loaai ti tââp tin Trong ASP.NETp tin Trong ASP.NET
.asax: tâp tin global.asax trong ASP.NET thay th ê cho tâp tin global.asp trong ASP, la tâp tin quan ly cac sư kiên cua ưng dung (application), session, va cac sư kiên khi co cac yêu câu tơi trang web
.ascx: cac điêu khiên do ngươi dung tư tao đươc lưu trư vơi phâ mơ rông ascx
.asmx: tâp tin web service cua ưng dung ASP.NET .aspx: phân mơ rông măc đinh cua trang ASP.NET .config: tâp tin câu hinh ưng dung theo đinh dang XML.
Web.config chưa hâu hêt cac câu hinh cua ưng dung .cs: tâp tin ma nguôn viêt theo ngôn ngư C# .js: tâp tin ma nguôn cua javascript .vb: tâp tin ma nguôn viêt theo ngôn ngư VB.NET
http:// lhu.edu.vnhttp:// lhu.edu.vn38
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Ngôn ngNgôn ngữữ llậập trp trìình ASP.NETnh 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,…
http:// lhu.edu.vnhttp:// lhu.edu.vn39
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
CCấấu tru trúúc trang ASP.NETc 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
http:// lhu.edu.vnhttp:// lhu.edu.vn40
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
CCââu Tu Truruc Trang ASP.NETc Trang ASP.NET
http:// lhu.edu.vnhttp:// lhu.edu.vn41
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
DirectivesDirectives
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 Vi du:<%@ Page Language=“VB” AutoEventWireUp=“true”
CodeFile=“Default.aspx.vb” Inherits=“_Default” %>
http:// lhu.edu.vnhttp:// lhu.edu.vn42
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
DirectivesDirectives
Đăng ký không gian tên hay lớp trong custom control
Register
Chỉ định những thuộc tính và giá trị của trangPage
Chỉ định trang chính được dùng trong trangMaster.
Master
Sử dụng cho user controlControl
Chỉ dẫn liên kết đến một trang khácReference
điều khiển chính sách sử dụng bộ nhớ cache chotrnag ASP.NET hay user control
OutputCache
Không gian tên dùng cho Page hay user controlImport
Liên kết assembly va Page hay user controlAssemblyÝ nghĩaDirective
http:// lhu.edu.vnhttp:// lhu.edu.vn43
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Code declaration blocksCode declaration blocks
http:// lhu.edu.vnhttp:// lhu.edu.vn44
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Other attributesOther attributes
Tags “< script>…..</script>” cho phép các thuộc tính khác
http:// lhu.edu.vnhttp:// lhu.edu.vn45
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Code render blocksCode 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()
http:// lhu.edu.vnhttp:// lhu.edu.vn46
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
ASP.NET Server ControlASP.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
http:// lhu.edu.vnhttp:// lhu.edu.vn47
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
ServerServer--Side CommentsSide 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 --%>
http:// lhu.edu.vnhttp:// lhu.edu.vn48
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
ServerServer--Side include directivesSide include directives
Dùng đặc tính file <!-- #INCLUDE file=“myinclude.aspx” -->
Virtual server-side include <!-- #INCLUDE virtual=“/directory1/myinclude.aspx” -->
http:// lhu.edu.vnhttp:// lhu.edu.vn49
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Literal text and HTML tagsLiteral text and HTML tags
http:// lhu.edu.vnhttp:// lhu.edu.vn50
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
XXư ly ư ly ssư ư kikiêênn
Xử lý sự kiện trong ASP
http:// lhu.edu.vnhttp:// lhu.edu.vn51
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
XXư ly ư ly ssư ư kikiêênn
Xử lý sự kiện trong ASP
http:// lhu.edu.vnhttp:// lhu.edu.vn52
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Vi du Vi du xxư ly ư ly ssư ư kikiêênn
http:// lhu.edu.vnhttp:// lhu.edu.vn53
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Kết Quả Cua Ví Dụ
http:// lhu.edu.vnhttp:// lhu.edu.vn54
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Trang HTML tTrang HTML tĩĩnhnh
http:// lhu.edu.vnhttp:// lhu.edu.vn55
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Trang ASPX đTrang ASPX độộng đơn ging đơn giảảnn
http:// lhu.edu.vnhttp:// lhu.edu.vn56
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
CCáách thch thưưc hoc hoạạt đt độộngng
http:// lhu.edu.vnhttp:// lhu.edu.vn57
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
HTML Code đưHTML Code đượợc trc trảả vvềề ttừừ serverserver
http:// lhu.edu.vnhttp:// lhu.edu.vn58
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Code trong Script TagCode trong Script Tag
http:// lhu.edu.vnhttp:// lhu.edu.vn59
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Code BehindCode Behind
http:// lhu.edu.vnhttp:// lhu.edu.vn60
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Trang ASP.NETTrang ASP.NET đ đââu tiênu tiên
http:// lhu.edu.vnhttp:// lhu.edu.vn61
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Trang ASP.NETTrang ASP.NET đ đââu tiênu tiên
http:// lhu.edu.vnhttp:// lhu.edu.vn62
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Trang ASP.NETTrang ASP.NET đ đââu tiênu tiên
http:// lhu.edu.vnhttp:// lhu.edu.vn63
Ts. VTs. Vu Đưu Đưc Lung c Lung –– Ks Ks. H. Huyuynh Cao Tunh Cao Tuâân n -- Ks Ks. P. Phan Hhan Hưưu Tiu Tiêêpp
Trang ASP.NETTrang ASP.NET đ đââu tiênu tiên
http://lhu.edu.vn64 LHULHU
www.themegallery.com