42
/42 Bi 1: GII THIU ASP.NET 1.1. M đu 1.2. Gii thiu ASP.NET 1.3. Kiến trúc ứng dụng của web 1.4. Web server 1.5. To v chy ứ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 thnh phn có thể chứa trong trang 1

Bài 1: GIỚI THIỆU ASP.NET

  • Upload
    sybil

  • View
    73

  • Download
    4

Embed Size (px)

DESCRIPTION

Bài 1: GIỚI THIỆU ASP.NET. 1.1. Mở đầu 1.2. Giới thiệ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 . 1.1. Mở đầu. - PowerPoint PPT Presentation

Citation preview

Page 1: Bài 1: GIỚI THIỆU ASP.NET

/421

Bai 1: GIƠI THI U ASP.NETÊ1.1. Mơ đâu1.2. Giơi thi u ASP.NETê1.3. Kiến trúc ứng dụng của web 1.4. Web server 1.5. Tao va chay ứng dụng1.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 thanh phân có thể chứa trong trang

Page 2: Bài 1: GIỚI THIỆU ASP.NET

/422 /42

1.1. Mơ đâu

• HTTP va 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

Page 3: Bài 1: GIỚI THIỆU ASP.NET

/423 /42

HTTP (Hypertext Transfer Protocol)

• HTTP :– Kỹ thuật cơ bản của lập trình ứng dụng web – La một giao thức cho phép các máy tính trao đổi thông tin vơi nhau qua mang

máy tính – Được xác định qua URLs (Uniform Resource Locators), vơi cấu trúc chuỗi có định

dang như sau:

http: // <host> [: <port>] [ <path> [? <query>]]

• Một số thuật ngữ: – Internet�– WWW�– Web Server�– Web Client�– Web Browser�

Page 4: Bài 1: GIỚI THIỆU ASP.NET

/424 /42

HTML (Hypertext Markup Language)

<Html> <Head> <Title>ASP.Net</Title> </Head> <Body> <P align="center"> <FONT size="6"> Chao các ban đã đến vơi ASP.Net!!! </FONT> </P> </Body> </Html>

Page 5: Bài 1: GIỚI THIỆU ASP.NET

/425 /42

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 va cập nhật dữ liệu được thực hiện ơ Database Server, việc nhận kết quả va hiển thị phải được thực hiện ơ Client => Khó khăn trong vấn đề bảo trì va nâng cấp

• Khối lượng dữ liệu truyền trên mang lơn �=> chiếm dụng đường truyền, thêm gánh nặng cho Database Server.

Page 6: Bài 1: GIỚI THIỆU ASP.NET

/426 /42

• 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 manh

• Xử lý nhận va hiển thị dữ liệu tập trung tai Application Server => dễ quản lý, bảo trì va nâng cấp

• Xử lý truy cập dữ liệu tập trung tai Database Server

Phải sử dụng thêm một Application Server => Tăng chi phí.

Page 7: Bài 1: GIỚI THIỆU ASP.NET

/427 /42

Web Application

• La 1 loai ứng dụng client/server• Thanh phân:– Web Client– Web Browser– Web Server

Page 8: Bài 1: GIỚI THIỆU ASP.NET

/428 /42

Web Application

user

http

SQL

Access

Page 9: Bài 1: GIỚI THIỆU ASP.NET

/429 /42

1.2. Giơi thi u ASP.NETê• Visual Studio .Net la bộ phân mềm được dùng để xây dựng va

phát triển các ứng dụng• Đ 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# va J#– Tất cả các ngôn ngữ nay được xây dựng dựa trên nền .Net

Framework

Page 10: Bài 1: GIỚI THIỆU ASP.NET

/4210 /42

• Các ham API của Windows• Microsoft Transaction Server (MTS)• Internet Information Server (IIS)

• La thanh phân "kết nối" giữa các phân khác trong .NET Framework vơi hệ điều hanh

• CLR giữ vai trò quản lý việc thi hanh 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

• La kỹ thuật lập trình va 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 la các dịch vụ được cung cấp qua Web (hay Internet)

Gồm các lơp đối tượng danh cho việc xây dựng các ứng dụng Windows

Page 11: Bài 1: GIỚI THIỆU ASP.NET

/4211 /42

Quan điểm l p trình webâ

L p trình phia Client:âHTML, Java Script, CSS (Cascading Style Sheets)Hoat động:

– Khi Web browser yêu câu một trang web

– Web server tìm trang web ma Client yêu câu

– Gơi về cho Client – Client nhận kết quả trả

về từ Server; Xử lý ; hiển thị lên man hình

Lập trình phia Server:ASP.Net Hoat động:

– 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 HTML/JavaScript/CSS

– Khi Web browser yêu câu một trang web

– Web server tìm trang web ma Client yêu câu

– Trả về cho Client– Client nhận kết quả trả về từ Server

va hiển thị lên man hình

Page 12: Bài 1: GIỚI THIỆU ASP.NET

/4212 /42

Vi dụTrang1.html

<html><body> Xin chao ban</body></html>

Trang2.asp

<%@ Page Language="C#" %><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title>Các điều khiển giao diện</title></head><body> <form id="form_chinh" runat="server"> <%Response.Write(DateTime.Today.Date.ToShortDateString());%> </form></body></html>

Page 13: Bài 1: GIỚI THIỆU ASP.NET

/4213 /42

Ưu điểm của ASP.Net

• Nhiều ngôn ngữ lập trình ma ban yêu thích: Visual Basic.Net, J#, C#,…

• ASP.Net hỗ trợ manh mẽ bộ thư viện phong phú va đa dang của .Net Framework, lam 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

Page 14: Bài 1: GIỚI THIỆU ASP.NET

/4214 /42

Static 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 la sử dụng một Form trực tuyến (Online Form) để

thu nhận ý kiến của người xem va 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 va hấp dẫn

• Ví dụ: http://namchautourist.com/

Page 15: Bài 1: GIỚI THIỆU ASP.NET

/4215 /42

Dynamic Web Pages• Được thiết kế bằng kỹ thuật ASP (Active Server Pages) chay Windows hay PHP

(PHP Hypertext Preprocessor) vơi Linux.• Phải có cơ sơ dữ liệu va tùy theo mục đích của website, nó có thể có các thanh

phân như:1. Inner search: Phân tìm kiếm 2. Member account: tai khoản danh cho Hội Viên. Vơi một Username va

Password3. Shopping Cart: Thanh phân giúp cho việc mua bán trên mang (online trading)

được thực hiện thông qua giả định việc chọn va bỏ món hang đã chọn vao giỏ mua hang. Các thông số liên quan đến món hang sẽ được cập nhật vao tai khoản của người Mua, giúp cho việc xác định công nợ va thanh toán.

4. Online Payment: Thanh phân giúp cho việc buôn bán trên mang được khả thi: Tiền được trao cho Bên Bán va hang sẽ được chuyển cho Bên Mua

5. Forum: Diễn đan trực tuyến

Page 16: Bài 1: GIỚI THIỆU ASP.NET

/4216 /42

1.3. Kiến trúc ứng dụng của web

Page 17: Bài 1: GIỚI THIỆU ASP.NET

/4217 /42

Tâ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 dang

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ả lai cho người dùng

Page 18: Bài 1: GIỚI THIỆU ASP.NET

/4218 /42

Tâng Logic (Bussiness Logical Tier)

• Web server : – Đảm nhận nhiệm vụ đón các yêu câu từ tâng trình diễn (yêu câu phía

client) va trả về kết quả cho phía client – Có nhiệm vụ thực thi các thanh phân điều khiển trình diễn của ứng

dụng chủ – Quy trình xử lý nghiệp vụ va điều khiển sẽ do thanh phân thứ hai

đảm trách• Thanh phân ứng dụng chủ :

– Thanh phân nay chứa các tập API để truy nhập va 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 để tao ra các dự liệu XML va sau đó kết hợp vơi các tham số được định sẵn trong bộ Stylesheet để tao ra các trang HTML, WML theo từng nền trình diễn

Page 19: Bài 1: GIỚI THIỆU ASP.NET

/4219 /42

Tâng dữ liệu (Data Tier)

• Tâng nay đảm trách việc lấy, lưu trữ va cập nhật dữ liệu

• Vì vậy có thể nhìn nhận tâng nay thể hiện cho 1 cơ sơ dữ liệu

• Chứa CSDL của toan trang• Ngoai ra tâng nay còn có thể chứa CSDL của

các ứng dụng được tích hợp khác

Page 20: Bài 1: GIỚI THIỆU ASP.NET

/4220 /42

Các phân mêm

• H điều hanh (Windows 2000, XP, 7 … ) ê• .NET framework SDK (Software Development Kit) • Cai đặt một cơ sơ dữ liệu (Database) vững manh

Page 21: Bài 1: GIỚI THIỆU ASP.NET

/4221 /42

Phương pháp lam vi cê• Kiểu mâu RESQUEST/RESPONSE• Kiểu mâu EVENT-DRIVEN

Page 22: Bài 1: GIỚI THIỆU ASP.NET

/4222 /42

Kiể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 mang đó va thường la trang chủ (home page)

3. Server đáp ứng bằng cách hoan trả hồ sơ ma Client đã yêu câu4. Client nhận được hồ sơ gơi về va hiển thị (display) trong

browser của mìnhLưu ý: • Còn gọi la '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

Page 23: Bài 1: GIỚI THIỆU ASP.NET

/4223 /42

• 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

nao đó trong mang • 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 lam 1 điều gì đó

• Vì vậy kiểu mẫu event – driven còn được gọi la 'response to your action‘, server có thể phát hiện ra các hanh động của Client để phản ứng cho thích hợp

Kiểu mâu EVENT-DRIVEN

Page 24: Bài 1: GIỚI THIỆU ASP.NET

/4224 /42

1.4. Web server

• Web server :– La một máy chủ hoặc một phân mềm trên máy ma nó có

thể đáp lai 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 thanh trang HTML trươc khi gửi về cho client

• Các phân mềm tao web server thông dụng :– IIS– Tomcat

Page 25: Bài 1: GIỚI THIỆU ASP.NET

/4225 /42

Internet 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 manh 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 â• Kiểm tra• Cấu hình Internet Information Services • Tao các ứng dụng web trên IIS

Page 26: Bài 1: GIỚI THIỆU ASP.NET

/4226 /42

Thiết l p Internet Information Serviceâ1. Mơ Control Panel2. Click Programs and Features3. Click Turn Windows features on or

off 4. Click Internet Information Services5. 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 vao OK cho máy cai giùm mình IIS7

7. Khi Windows Features đóng lai thì cũng la lúc IIS7 được cai xong

Page 27: Bài 1: GIỚI THIỆU ASP.NET

/4227 /42

Kiểm tra

Web Server mặc định ánh xa vao //localhost

Page 28: Bài 1: GIỚI THIỆU ASP.NET

/4228 /42

Cấu hình Internet Information Services

• Để cấu hình IIS, vao Control Panel Administrative Tool Internet Information Services Manager

• Cai Internet Information Services

Page 29: Bài 1: GIỚI THIỆU ASP.NET

/4229 /42

1.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 ban 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)

– Ban cũng có thể tao ánh xa từ một thư mục khác (tao một thư mục nằm ngoai thư mục wwwroot)

Page 30: Bài 1: GIỚI THIỆU ASP.NET

/4230 /42

Tạo Virtual Directory

Page 31: Bài 1: GIỚI THIỆU ASP.NET

/4231 /42

1.6 Cách tạo va chạy ứng dụng

Tạo ứng dụng web trong Visual Studio.NETKhơi động Visual Studio.NETChọn File –> New –> Website Trong hộp thoai New Website

1

3

2

Page 32: Bài 1: GIỚI THIỆU ASP.NET

/4232 /42

Cách tạo va chạy ứng dụng

Page 33: Bài 1: GIỚI THIỆU ASP.NET

/4233 /42

Cách tạo va chạy ứng dụng

• Nhấn F5 để chay ứng dụng

Page 34: Bài 1: GIỚI THIỆU ASP.NET

/4234 /42

1.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 dang file nay theo kiểu XML

File CSS (Xác định các kiểu hiển thị)

Trang mặc định khi chay website

Các File sử dụng cho các tiến trình phía Client

Page 35: Bài 1: GIỚI THIỆU ASP.NET

/4235 /42

1.7. Cách viết code

HTML hoặc XML va server controls

Bất kỳ ngôn ngữ lập trình nao được hỗ trợ

bơi CLR

Giao diện người dùng

Xử lý logic bên trong

Trang Asp.net

Page 36: Bài 1: GIỚI THIỆU ASP.NET

/4236 /42

Code Inline

Page 37: Bài 1: GIỚI THIỆU ASP.NET

/4237 /42

Code Behind

Khai báo nơi chứa Code

File chứa Code

Page 38: Bài 1: GIỚI THIỆU ASP.NET

/4238 /42

1.8. Các thanh 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)

Page 39: Bài 1: GIỚI THIỆU ASP.NET

/4239 /42

Không gian tên (Namespaces)

• NameSpace la 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 va dễ tìm kiếm

• Namespaces có kiến trúc phân cấp. Muốn truy nhập vao một chức 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 đó

• Mỗi NameSpace được chứa trong các file gọi la file Assembly, có phân mơ rộng la .dll. NameSpace có thể xem như các file thư viện liên kết động DLL

• System la 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) va các NameSpace khác

Page 40: Bài 1: GIỚI THIỆU ASP.NET

/4240 /42

Khai báo Namespace

<%@import NameSpace=<Tên NameSpace>%>

<%@import Namespace = "System.Data" %><%@import Namespace = "System.Data.OleDb" %>

Page 41: Bài 1: GIỚI THIỆU ASP.NET

/4241

Namespaces và chức năngCollections 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.NET

Math 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.NET

XML 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ạ

Page 42: Bài 1: GIỚI THIỆU ASP.NET

/4242 /42

Cá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%>