Tìm hiểu các mô hình ứng dụng• Dữ liệu tập trung => đảm bảo dữ liệu được nhất quán • Dữ liệu được chia sẻ cho nhiều người dùng • Các xử lý tra cứu và cập nhật dữ liệu được thực hiện ơ
Trang 1Bài 1: GIỚI THIệU ASP.NET
1.1 Mở đầu
1.2 Giới thi u ASP.NETệu ASP.NET
1.3 Kiến trúc ứng dụng của web
1.4 Web server
1.5 Tạo và chạy ứng dụng
1.6 Cấu trúc các ứng dụng
1.7 Cách viết code trong chương trình
1.8 Các thành phần có thể chứa trong trang
Trang 21.1 Mở đầu
• HTTP và HTML - Nền móng của Kỹ thuật lập trình web
• Tìm hiểu các mô hình ứng dụng
• Web Application
Trang 3HTTP (Hypertext Transfer Protocol)
• HTTP :
– Kỹ thuật cơ bản của lập trình ứng dụng web
– Là một giao thức cho phép các máy tính trao đổi thông tin với nhau qua mạng
– Web ServerInternet
– Web ClientInternet
Trang 4HTML (Hypertext Markup Language)
Trang 5Tìm hiểu các mô hình ứng dụng
• Dữ liệu tập trung => đảm bảo dữ
liệu được nhất quán
• Dữ liệu được chia sẻ cho nhiều
người dùng
• Các xử lý tra cứu và cập nhật 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 => Khó khăn trong vấn đề bảo trì và nâng cấp
• InternetKhối lượng dữ liệu truyền trên mạng lớn => chiếm dụng đường truyền, thêm
Trang 6• Hỗ trợ nhiều người dùng
• Giảm bớt xử lý cho Client => Không
yêu cầu máy tính ở 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ễ
quản lý, bảo trì và nâng cấp
• Xử lý truy cập dữ liệu tập trung tại
Phải sử dụng thêm một Application Server => Tăng chi phí
Trang 8Web Application
user
http
SQL
Trang 91.2 Giới thi u ASP.NET ệu ASP.NET
• 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
• Đ c điểm:ặc điểm:
– Visual Studio Net 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 được xây dựng dựa trên nền Net Framework
Trang 10• Các hàm API của Windows
• Microsoft Transaction Server (MTS)
• Internet Information Server (IIS)
• Là thành phần "kết
nối" giữa các phần
khác trong NET
Framework với hệ điều
hành
• CLR giữ vai trò quản lý
việc thi hành các ứng
dụng viết bằng NET
trên Windows
Thư viện các lớp
cơ bản nhất, được dùng trong khi xây dựng NET
Framework
Gồm các lớp dùng để
xử lý dữ liệu
• Là kỹ thuật lập trình và phát triển ứng dụng web ở
phía Server (Server-side)
• Thư viện các lớp đối tượng dùng trong việc xây
dựng các ứng dụng Web
• Web services có thể hiểu là các dịch vụ được cung
cấp qua Web (hay Internet)
Gồm các lớp đối tượng dành cho việc xây dựng các ứng dụng Windows
Trang 11Quan điểm l p trình web ập trình web
L p trình phía Client: ập trình web
HTML, Java Script, CSS
(Cascading Style Sheets)
Hoạt động:
– Khi Web browser yêu
cầu một trang web
– Web server tìm trang
web mà Client yêu cầu
– Gởi về cho Client
– Trang ASP sẽ được biên dịch và thi hành
tại Web Server
– Kết quả tự động được chuyển sang
Trang 13Ưu điểm của ASP.Net
• Nhiều ngôn ngữ lập trình
mà bạn yêu thích: Visual
Basic.Net, J#, C#,…
• 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 CSDL qua
ADO.Net, …
• ASP.Net sử dụng phong cách
lập trình mới Code behide
Trang 14Static Web Pages
• Được thiết kế bằng kỹ thuật HTML (Hypertext Mark-up
Language)
• Chỉ đáp ứng việc giới thiệu thông tin cho người dùng xem
• Cao nhất là sử dụng một Form trực tuyến (Online Form) để
thu nhận ý kiến của người xem và gửi về e-mail định danh
trước
• Website tĩnh có thể được trang bị các kỹ thuật như Java
Script, Flash Macromedia hay Animation Gif, giúp cho giao
diện của các trang web thêm sống động và hấp dẫn
• Ví dụ: http://namchautourist.com/
Trang 15Dynamic Web Pages
• Được thiết kế bằng kỹ thuật ASP (Active Server Pages) chạy Windows hay PHP
(PHP Hypertext Preprocessor) với Linux.
• Phải có cơ sở dữ liệu và tùy theo mục đích của website, nó có thể có các thành
phần như:
1 Inner search: Phần tìm kiếm
2 Member account: tài khoản dành cho Hội Viên Với một Username và
Password
3 Shopping Cart: Thành phần giúp cho việc mua bán trên mạng (online trading) được thực hiện thông qua giả định việc chọn và bỏ món hàng đã chọn vào giỏ mua hàng Các thông số liên quan đến món hàng sẽ được cập nhật vào tài
khoản của người Mua, giúp cho việc xác định công nợ và thanh toán.
4 Online Payment: Thành phần giúp cho việc buôn bán trên mạng được khả thi: Tiền được trao cho Bên Bán và hàng sẽ được chuyển cho Bên Mua
5 Forum: Diễn đàn trực tuyến
Trang 161.3 Kiến trúc ứng dụng của web
Trang 17Tầng trình diễn (Presentation Tier)
• Người dùng có nhiều lựa chọn về nền trình diễn
• Hệ thống sẽ tự động gọi các tệp cấu hình sẵn cho tầng nền
• Tầng trình diễn chịu trách nhiệm :
– Cung cấp giao diện cho nhiều loại người dùng khác nhau
– Lấy các yêu cầu, dữ liệu từ người dùng, có thể định dạng
nó theo những qui tắc đơn giản (dùng các ngôn ngữ Script) – Gọi các component thích hợp từ tầng Business Logic để xử
lý các yêu cầu
• Kết quả sau xử lý được trả lại cho người dùng
Trang 18Tầng Logic (Bussiness Logical Tier)
– Thành phần này chứa các tập API để truy nhập và thao tác với cơ sở
dữ liệu ở tầng thứ ba - tầng cơ sở dữ liệu
– Các API được dùng để tạo ra các dự liệu XML và sau đó kết hợp với
các tham số được định sẵn trong bộ Stylesheet để tạo ra các trang
HTML, WML theo từng nền trình diễn
Trang 19Tầng dữ liệu (Data Tier)
• Tầng này đảm trách việc lấy, lưu trữ và cập nhật dữ liệu
• Vì vậy có thể nhìn nhận tầng này thể hiện cho
1 cơ sở dữ liệu
• Chứa CSDL của toàn trang
• Ngoài ra tầng này còn có thể chứa CSDL của
các ứng dụng được tích hợp khác
Trang 20Các phần mềm
• H điều hành (Windows 2000, XP, 7 … ) ệu ASP.NET
• NET framework SDK (Software Development Kit)
• Cài đặt một cơ sở dữ liệu (Database) vững mạnh
Trang 21Phương pháp làm vi c ệu ASP.NET
• Kiểu mẫu RESQUEST/RESPONSE
• Kiểu mẫu EVENT-DRIVEN
Trang 22Kiểu mẫu RESQUEST/RESPONSE
1 Client (thông qua Internet Browser) xác định vị trí của Web
Server qua URL (Universal Resource Locator)
2 Client sẽ yêu cầu được tham khảo 1 trang trong mạng đó và
thường là trang chủ (home page)
3 Server đáp ứng bằng cách hoàn trả hồ sơ mà Client đã yêu cầu
4 Client nhận được hồ sơ gởi về và hiển thị (display) trong
browser của mình
Lưu ý:
• Còn gọi là 'response to your request', chờ yêu cầu từ phía client
• Khi Client đã nhận được hồ sơ thì quá trình trao đổi sẽ kết thúc ngay lập tức
Trang 23• Kiểu mẫu event-driven dùng với ASP.NET
• Server sẽ không chờ client yêu cầu tham khảo 1 trang nào đó trong mạng
• Server đã bố trí sẵn trước tất cả mọi tình huống để
có thể đáp ứng kịp thời mỗi khi Client yêu cầu làm 1 điều gì đó
• Vì vậy kiểu mẫu event – driven còn được gọi là
'response to your action‘, server có thể phát hiện ra
các hành động của Client để phản ứng cho thích hợp
Kiểu mẫu EVENT-DRIVEN
Trang 241.4 Web server
• Web server :
– Là một máy chủ hoặc một phần mềm trên máy mà nó có thể đáp lại các yêu cầu dữ liệu từ phía trình duyệt sử dụng giao thức HTTP cho phép người dùng có thể truy cập file HTML
– Webserver biên dịch mã lệnh thành trang HTML trước khi gửi về cho client
• Các phần mềm tạo web server thông dụng :
– IIS
– Tomcat
Trang 25Internet Information Services
• IIS có thể được sử dụng như một Web server
• IIS 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
• Các bước thực hiện:
• Thiết l p Internet Information Service ập Internet Information Service
• Kiểm tra
• Cấu hình Internet Information Services
• Tạo các ứng dụng web trên IIS
Trang 26Thiết l p Internet Information Service ập Internet Information Service
1 Mở Control Panel
2 Click Programs and Features
3 Click Turn Windows features on or
off
4 Click Internet Information Services
5 Mở rộng cây thư mục Expand
Internet Information Services >
World Wide Web Services >
Application Development Features
> Click ISAPI Extensions
6 Click chuột vào OK cho máy cài giùm
mình IIS7
7 Khi Windows Features đóng lại thì
cũng là lúc IIS7 được cài xong
Trang 27Kiểm tra
Web Server mặc định ánh
xạ vào //localhost
Trang 28Cấu hình Internet Information Services
• Để cấu hình IIS, vào Control Panel Administrative Tool
Internet Information Services Manager
• Cài Internet Information Services
Trang 291.5 Tạo các ứng dụng web trên IIS
• Một Web Server có thể quản lý nhiều ứng dụng Web đồng
thời
• Cách quản lý:
– Thông thường bạn sẽ tổ chức một thư mục con trong
wwwroot cho mỗi ứng dụng (IIS sẽ tự động liệt kê nó trong mục Default Web Site)
– Bạn cũng có thể tạo ánh xạ từ một thư mục khác (tạo một thư mục nằm ngoài thư mục wwwroot)
Trang 30Tạo Virtual Directory
Trang 311.6 Cách tạo và chạy ứng dụng
Tạo ứng dụng web trong Visual Studio.NET
Khởi động Visual Studio.NET
Chọn File –> New –> Website
Trong hộp thoại New Website
Trang 32Cách tạo và chạy ứng dụng
Trang 33Cách tạo và chạy ứng dụng
• Nhấn F5 để chạy ứng dụng
Trang 341.5 Cấu trúc các ứng dụng
Folder chứa các trang phụ liên quan đến Account
Folder chứa dữ liệu
File cấu hình; Định dạng file này theo kiểu XML
File CSS (Xác định các kiểu hiển thị)
Trang mặc định khi chạy website Các File sử dụng cho các tiến trình phía Client
Trang 35bởi CLR
Giao diện
người dùng
Xử lý logic bên trong
Trang Asp.net
Trang 36Code Inline
Trang 37Code Behind
Khai báo nơi chứa Code
Trang 381.8 Các thành phần có thể chứa trong trang
• Không gian tên (Namespaces)
• Khai báo Namespace
• Namespaces và chức năng
• Các chỉ thị (instructions)
Trang 39Không gian tên (Namespaces)
• NameSpace là một tập hợp Logic các nhóm thư viện có liên quan đến nhau, giúp người lập trình dễ sử dụng và dễ tìm kiếm
năng hay một đối tượng của NameSpace cần phải biết được sõ đồ phân cấp của NameSpace đó
phần mở rộng là dll NameSpace có thể xem như các file thư viện liên kết động DLL
• System là một NameSpace gốc của framework.NET Nó chứa tất cả
các kiểu dữ liệu nguyên thuỷ (Primitives) và các NameSpace khác
Trang 40Khai báo Namespace
<%@import NameSpace=<Tên NameSpace>%>
<%@import Namespace = "System.Data" %>
<%@import Namespace = "System.Data.OleDb" %>
Trang 41Namespaces và chức năng
Collections Chứa các đối tượng như Danh sách, hàng đợi và bảng băm
ComponentModel Chứa các lớp cho phép thay đổi các control và component trong cả lúc chạy và lúc thiết kế.Configuration Cung cấp các phương thức và đối tượng cho phép truy cập đến các thông số cấu hình cho NET
Data Chứa các lớp cho phép tương tác với nguồn dữ liệu, Hình thành nên ADO.NETMath Chứa các hàm và hằng số liên quan đến xử lý toán học.
Web Cung cấp cơ chế truyền thông giữa Client/Browser; Nó mô tả các đối tượng được sử dụng với ASP.NETXML Chứa các lớp để xử lý dữ liệu XML
Drawing Chứa các lớp cho phép sử dụng khả năng về đồ hoạ
Trang 42Các chỉ thị (instructions)
Các chỉ thị được sử dụng để khai báo các kế thừa
từ framework hoặc từ những source code khác, một chỉ thị đựơc bắt đầu bởi ký tự @
Cú pháp:
<%@IntructionsName Listattribute%>