81
1 Chương 4 TỔNG QUAN VỀ ASP.NET QUẢN LÝ ỨNG DỤNG WEB www.thayphet.net - [email protected] © Dương Thành Phết KHOA CAO ĐẲNG THỰC HÀNH THIẾT KẾ & LẬP TRÌNH WEBSITE (Chuyên ngành: Đồ Họa Đa Truyền Thông)

THIẾT KẾ & LẬP TRÌNH WEBSITE - Thayphet.net

Embed Size (px)

Citation preview

1

Chương 4

TỔNG QUAN VỀ ASP.NET VÀ

QUẢN LÝ ỨNG DỤNG WEB

www.thayphet.net - [email protected] © Dương Thành Phết

KHOA CAO ĐẲNG THỰC HÀNH

THIẾT KẾ & LẬP TRÌNH WEBSITE (Chuyên ngành: Đồ Họa Đa Truyền Thông)

2 2

© Dương Thành Phết

NỘI DUNG

www.thayphet.net - [email protected]

1. Giới thiệu về ASP.Net và Net Framework

2. Tạo ứng dụng Web với Microsoft Visual

3. Triển khai ứng dụng web

4 Các đối tượng trong ASP.Net

5. Tâp tin quản lý và cấu hình ứng dụng

3 3

© Dương Thành Phết

1.1 Tìm hiểu về ASP.Net

1. GIỚI THIỆU VỀ ASP.NET VÀ .NET FRAMEWORK

1.2 Những ưu điểm của ASP.Net

1.3 Quá trình xử lý tâp tin .Aspx

1.4 Tìm hiểu về .Net Phatform và .Net Framework

www.thayphet.net - [email protected]

4 4

1.1. TÌM HIỂU VỀ ASP.NET

Cuối thâp niên 90, ASP (Active Server Page) đã được

nhiều lâp trình viên lựa chọn để xây dựng và phát triển

ứng dụng web động trên máy chủ hệ điều hành Windows.

ASP thể hiện những ưu điểm với mô hình lâp trình thủ

tục đơn giản, sử dụng hiệu quả các đối tượng: 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…

ASP cũng hỗ trợ nhiều ngôn ngữ: VBScript, JavaScript

Được yêu thích trong thời gian dài

© Dương Thành Phết www.thayphet.net - [email protected]

5 5

Tuy nhiên, ASP còn tồn đọng một số khó khăn như:

Code ASP và HTML lẫn lộn, viết code khó khăn,

Hạn chế khả năng sử dụng lại code.

Triển khai không được biên dịch dễ mất code

Hạn chế về tốc độ, quá trình Postback khó khăn, …

© Dương Thành Phết www.thayphet.net - [email protected]

1.1. TÌM HIỂU VỀ ASP.NET

6 6

Năm 2002, Microsoft giới thiệu một kỹ thuât lâp trình

Web mới là ASP.Net.

Với ASP.Net, không những không cần phải biết các tag

HTML, thiết kế web, mà còn hỗ trợ mạnh lâp trình hướng

đối tượng trong quá trình xây dựng và phát triển ứng

dụng Web.

© Dương Thành Phết www.thayphet.net - [email protected]

1.1. TÌM HIỂU VỀ ASP.NET

7 7

ASP.Net là kỹ thuât lâp trình và phát triển ứng dụng

web ở phía Server dựa trên nền tảng của Microsoft .Net

Framework.

Mã lệnh ở phía server sẽ được biên dịch và thi hành tại

Web Server kết quả được chuyển sang HTML/

JavaScript/ CSS và trả về cho Client.

Tất cả các xử lý lệnh ASP, ASP.Net đều được thực hiện

tại Server và do đó, gọi là kỹ thuât lâp trình ở phía server.

© Dương Thành Phết www.thayphet.net - [email protected]

1.1. TÌM HIỂU VỀ ASP.NET

8 8

1.2 NHỮNG ƯU ĐIỂM CỦA ASP.NET

ASP.Net cho phép lựa chọn một trong các ngôn ngữ

lâp trình : Visual Basic.Net, J#, C#,…

Trang ASP.Net được biên dịch thành những tâp tin

DLL mà Server có thể thi hành nhanh chóng và hiệu quả.

Yếu tố này là một bước nhảy vọt đáng kể so với kỹ thuât

thông dịch của ASP.

© Dương Thành Phết www.thayphet.net - [email protected]

9 9

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 cơ sở dữ liệu qua ADO.Net, …

ASPX và ASP cùng hoạt động trong 1 ứng dụng.

ASP.Net sử dụng phong cách lâp trình Code

behide(Tách code riêng, giao diện riêng) Dễ đọc, dễ quản

lý và bảo trì.

Kiến trúc lâp trình giống ứng dụng trên Windows.

© Dương Thành Phết www.thayphet.net - [email protected]

1.2 NHỮNG ƯU ĐIỂM CỦA ASP.NET

10 10

Hỗ trợ quản lý trạng thái của các control

Tự động phát sinh mã HTML cho các Server control

tương ứng với từng loại Browser

Triển khai cài đặt

Không cần lock, không cần đăng ký DLL

Cho phép nhiều hình thức cấu hình ứng dụng

Hỗ trợ quản lý ứng dụng ở mức toàn cục

Global.aspx có nhiều sự kiện hơn

Quản lý session trên nhiều Server, không cần Cookies

© Dương Thành Phết www.thayphet.net - [email protected]

1.2 NHỮNG ƯU ĐIỂM CỦA ASP.NET

11 11

1.3 QUÁ TRÌNH XỬ LÝ TẬP TIN .ASPX

Khi Web server nhân được yêu cầu từ phía client, nó sẽ

tìm kiếm tâp tin được yêu cầu thông qua chuỗi URL

được gởi về, sau đó, tiến hành xử lý theo sơ đồ sau

© Dương Thành Phết www.thayphet.net - [email protected]

12 12

1.4. NET PHATFORM VÀ .NET FRAMEWORK

.Net Phatform

Bao gồm .Net Framework và những công cụ được dùng

để xây dựng, phát triển ứng dụng và dịch vụ. ASP.Net.

© Dương Thành Phết www.thayphet.net - [email protected]

13 13

.Net Framework - Bộ thư viện các lớp đối tượng

© Dương Thành Phết www.thayphet.net - [email protected]

Hỗ trợ người lâp trình khi xây dựng ứng dụng. Với

hơn 5000 lớp đối tượng để thực hiện đủ các loại dịch vụ,

chúng ta có thể xây dựng ứng dụng bằng Notepad. Hay

với phần mềm Visual Studio.NET với giao diện trực quan

Nếu không có.NET Framework,Visual Studio.NET chỉ

là vỏ bọc! Nhưng nếu không có Visual Studio.NET, công

việc lâp trình .NET cũng lắm gian nan!

1.4. NET PHATFORM VÀ .NET FRAMEWORK

14 14

Hệ Điều Hành - Operating System

Với vai trò quản lý việc xây dựng và thi hành ứng

dụng .NET Framework cung cấp các lớp đối tượng

(Class) để thi hành các chức năng. Tuy nhiên được

"hưởng ứng" hay không tùy thuộc khả năng của HĐH.

Như vây chọn HĐH để sử dụng .NET Framework

là quan trọng. (Windows XP, 2003 Server, Vista sẽ đơn

giản và tiện dụng trong khi lâp trình)

© Dương Thành Phết www.thayphet.net - [email protected]

1.4. NET PHATFORM VÀ .NET FRAMEWORK

15 15

Common Language Runtime - CLR

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.

Trong các bản mới (XP.NET,2003, Vista) CLR

được gắn kèm với hệ điều hành. Điều này đảm bảo ứng

dụng viết ra sẽ chạy mà không cần cài đặt.

© Dương Thành Phết www.thayphet.net - [email protected]

1.4. NET PHATFORM VÀ .NET FRAMEWORK

16 16

Base Class Library – Thư viện các lớp cơ sở

Đây là thư viện các lớp cơ bản nhất, được dùng

trong khi lâp trình hay bản thân những người xây dựng

.NET Framework cũng phải dùng nó để xây dựng các

lớp cao hơn.

© Dương Thành Phết www.thayphet.net - [email protected]

1.4. NET PHATFORM VÀ .NET FRAMEWORK

17 17

Ado.Net và Xml

Bộ thư viện này gồm các lớp dùng để xử lý dữ

liệu. ADO.NET. Các lớp đối tượng XML được cung cấp

để bạn xử lý các dữ liệu theo định dạng mới: XML. Các

ví dụ cho bộ thư viện này là SqlDataAdapter,

SqlCommand, DataSet, XMLReader, XMLWriter,…

© Dương Thành Phết www.thayphet.net - [email protected]

1.4. NET PHATFORM VÀ .NET FRAMEWORK

18 18

Asp.Net

Bộ 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. Một "phong cách" lâp trình mới

code behind.

ASP.NET cung cấp một bộ các Server Control để lâp

trình viên bắt sự kiện và xử lý dữ liệu của ứng dụng như

đang làm việc với ứng dụng Windows. Cho phép chúng

chuyển ứng dụng chạy trên Windows thành một ứng

dụng Web khá dễ dàng. …

© Dương Thành Phết www.thayphet.net - [email protected]

1.4. NET PHATFORM VÀ .NET FRAMEWORK

19 19

Namespace phân nhóm các lớp đối tượng theo loại

Namespace là tên gọi một nhóm các lớp đối tượng

phục vụ cho một mục đích. Chẳng hạn, các lớp đối

tượng xử lý dữ liệu sẽ đặt trong một namespace là Data.

Các lớp đối tượng dành cho vẽ đặt trong namespace tên

là Drawing.

Một namespace có thể là con của một namespace

lớn. Namespace lớn nhất là System.

© Dương Thành Phết www.thayphet.net - [email protected]

1.4. NET PHATFORM VÀ .NET FRAMEWORK

20 20

2. TẠO ỨNG DỤNG WEB VỚI MS VISUAL STUDIO

2.1. Khởi động MS Visual Studio .Net

© Dương Thành Phết

2.2. Tạo ứng dụng Web

www.thayphet.net - [email protected]

21 21

Start Programs Microsoft Visual Studio 2005

Microsoft Visual Studio 2005

© Dương Thành Phết

2.1. KHỞI ĐỘNG MS VISUAL STUDIO .NET

www.thayphet.net - [email protected]

22 22

Từ menu File New Website

Chọn ASP.Net Website

Chọn vị trí lưu trữ - Location (D:\Wellcom)

Chọn ngôn ngữ lâp trình (C#)

Chọn Ok

© Dương Thành Phết

2.2. TẠO ỨNG DỤNG WEB

www.thayphet.net - [email protected]

23 23

Kết quả:

Cửa sổ Solution Explorer

© Dương Thành Phết

Trang Default.aspx (Design)

www.thayphet.net - [email protected]

2.2. TẠO ỨNG DỤNG WEB

24 24

Trang Default.aspx (Source)

© Dương Thành Phết

Trang Default.aspx.cs

www.thayphet.net - [email protected]

2.2. TẠO ỨNG DỤNG WEB

25 25

© Dương Thành Phết

•Chọn trang Default.aspx ở chế độ Design •Nhâp dòng văn bản: “Chào mừng các bạn đến vời ASP.Net”

•Thêm 2 điều khiển Label đặt tên là : lbNgay, lbThoigian.

2.3. BỔ SUNG ĐIỀU KHIỂN VÀO TRANG

www.thayphet.net - [email protected]

26 26

© Dương Thành Phết

Chuyển sang trang code Defaulr.aspx.cs (Double click vào

trang đang thiết kế) Nhâp code cho sự kiện Page Load:

Lưu ý: Phải lưu tâp tin với tùy chọn Save with Encoding…

www.thayphet.net - [email protected]

2.3. BỔ SUNG ĐIỀU KHIỂN VÀO TRANG

27 27

2.4. THI HÀNH ỨNG DỤNG

© Dương Thành Phết

Kiểm lỗi : Menu Build Chọn Build Web Site

Chấp nhân bât chế độ debug cho Website

www.thayphet.net - [email protected]

28 28

© Dương Thành Phết

Chạy chương trình (không debug):Ctrl + F5

Chạy chương trình (có debug): F5

www.thayphet.net - [email protected]

2.4. THI HÀNH ỨNG DỤNG

29 29

2.5 PHÂN LOẠI TẬP TIN TRONG ASP.NET:

© Dương Thành Phết

Diễn giải

.asax Tâp tin quản lý các sự kiện của ứng dụng

(application), session, và các sự kiện khi có các yêu

cầu tới trang web.

.ascx Các điều khiển do người dùng tự tạo được lưu trữ với

phần mở rộng là ascx (UserControl).

.asmx Tâp tin Web Service của ứng dụng ASP.Net

.aspx Phần mở rộng của trang ASP.Net

.config Tâp tin cấu hình ứng dụng theo định dạng XML.

Web.config chứa hầu hết các cấu hình của ứng dụng

.cs Tâp tin mã nguồn viết theo ngôn ngữ C#

.js Tâp tin mã nguồn của Jscript

www.thayphet.net - [email protected]

30 30

2.6. CÁC THÀNH PHẦN GIAO DIỆN TRÊN MS VS .NET

2.6.1 Solution Explorer

© Dương Thành Phết

2.6.2 Property Window

2.6.3 Toolbox

2.6.4 Document Outline Window

www.thayphet.net - [email protected]

31 31

2.6.1 SOLUTION EXPLORER

© Dương Thành Phết

Hiển thị cửa số Solution Explorer:

Menu View | Solution Explorer

Đây là cửa số quản lý các "tài nguyên" có trong

ứng dụng. Thông qua cửa sổ này, chúng ta có thể

thực hiện các chức năng như: Tạo thư mục, sao chép,

cắt, dán như trong Windows Explorer. Và thêm thành

phần mới cho ứng dụng:

www.thayphet.net - [email protected]

32 32

© Dương Thành Phết

Thêm thành phần mới cho ứng dụng: Click phải Add |

Add New Item…

Web Form: Thêm trang Web

Class: Thêm lớp đối tượng

Module Web Form: Thêm thư viện

Web User Control: Thêm điều khiển người dùng

… www.thayphet.net - [email protected]

2.6.1 SOLUTION EXPLORER

33 33

© Dương Thành Phết

Xác định Project khởi động(trong trường hợp Solution

có nhiều Project): Click phải chuột chọn Set as

StartUp Project.

www.thayphet.net - [email protected]

2.6.1 SOLUTION EXPLORER

34 34

© Dương Thành Phết

Xác định trang web khởi động cho ứng dụng: Chọn

trang cần khởi động Click phải chuột Chọn Set

As Start Page.

www.thayphet.net - [email protected]

2.6.1 SOLUTION EXPLORER

35 35

2.6.2 PROPERTY WINDOW

© Dương Thành Phết

Hiển thị cửa số Properties Window:

Menu View | Properties Window.

Dùng để thiết lâp thuộc tính cho trang web và

các điều khiển có trong trang web.

www.thayphet.net - [email protected]

36 36

2.6.3 TOOLBOX

© Dương Thành Phết

Hiển thị Toolbox:

Menu View Toolbox

Dùng để tạo các điều khiển trân trang.

www.thayphet.net - [email protected]

37 37

2.6.4 DOCUMENT OUTLINE WINDOW

© Dương Thành Phết

Hiển thị cửa sổ Document Outline:

Menu View / Other Windows / Document Outline.

Cửa sổ này hiển thị các thành phần của trang

web theo tổ chức cây rất dễ quản lý và thao tác với

các đối tượng có trong trang Web.

www.thayphet.net - [email protected]

38 38

3.1 Phần mềm Web Server(IIS)

© Dương Thành Phết

3. TRIỂN KHAI ỨNG DỤNG WEB(IIS)

3.2 Triển khai ứng dụng web

www.thayphet.net - [email protected]

39 39

3.1 PHẦN MỀM WEB SERVER(IIS)

Internet Information Services (IIS) là phần mềm

Web Server của Microsot dành cho HĐH Windows

IIS có thể được sử dụng như 1 Web server, kết

hợp với ASP, ASP.NET để 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.

IIS có rất nhiều phiên bản:

Windows 2000 tích hợp IIS 5.0.

Windows XP tích hợp IIS 5.5

Windows XP tích hợp IIS 6 hỗ trợ các tính năng

dành cho .NET và Web Service.

Windows Vista tích hợp IIS 7.0

© Dương Thành Phết

Giới thiệu về phần mềm Web Server(IIS)

www.thayphet.net - [email protected]

40 40

Cài đặt IIS Trên Windows 2000/XP

Bước 1. Chọn Control Panel | Add/Remove programs.

Bước 2. Add/Remove Windows Components.

Bước 3. Đánh dấu Internet Information Services (IIS).

Bước 4. Chọn nút Next để cài đặt.

© Dương Thành Phết www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

41 41

Sau khi cài đặt IIS, thư mục InetPub được tạo ra trong C:

và chứa thư mục con wwwroot.

Để kiểm tra cài đặt: Khởi động trình duyệt truy câp địa chỉ :

http://localhost hoặc http://127.0.0.1

© Dương Thành Phết www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

42 42

Trên Windows Vista/ Windows 7 Bước 1: Start Settings Control Panel

Bước 2: Classic View Chọn Programs and features

Bước 3: Turn Windows features on or off

Bước 4: Đánh dấu mục Internet Information Services (IIS)

Bước 5: Chọn nút OK để cài đặt.

© Dương Thành Phết www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

43 43

Để kiểm tra cài đặt: Khởi động trình duyệt truy câp địa chỉ :

http://localhost hoặc http://127.0.0.1

© Dương Thành Phết www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

44 44

Trên Windows 2000/XP

Start Settings Control Panel

Administratrive tools Internet Infomtic Services

Click phải Default Web site

© Dương Thành Phết

Cấu hình Web Server

www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

45 45

Qui định thư mục gốc ứng dụng: Home Directory

Để thực thi ứng dụng từ địa chỉ http://localhost thì phải

lưu ứng dụng tại thư mục này

Quy định trang chủ mặc định: Documents

Nghĩa là trang mặc định được mở khi truy câp địa chỉ:

http://localhost

© Dương Thành Phết www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

46 46

Trên Windows Vista/ Windows 7

© Dương Thành Phết

Start Settings Control Panel

Administratrive tools IIS Manager

www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

47 47

Quy định thư mục gốc ứng dụng: Directory Browsing

Quy định trang chủ mặc định: Default Document

© Dương Thành Phết www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

48 48

Khai báo thư mục vât lý

(D:\MyWebsite) Khai báo nhãn thư mục ảo (Myweb)

Next

Next Finish

Tạo thư mục ảo – Virtual Directory: Để truy câp

website lưu ở vị trí khác cần phải ánh xạ thư mục ảo.

© Dương Thành Phết

Click phải Default WebsiteNew/ Virtual Directory

Trên Windows 2000/XP

www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

49 49 OK

Click phải: Default WebsiteAdd Application

© Dương Thành Phết

Thư mục vât lý

Tên ánh xạ

Trên Windows Vista/ Windows 7

www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

50 50

Truy cập để kiểm tra

© Dương Thành Phết

Từ IIS Manager: Click phải trang cần xem (Default.aspx) Browse

Hoặc Từ trình duyệt nhâp: http://Localhost/Maytinh

www.thayphet.net - [email protected]

3.1 PHẦN MỀM WEB SERVER(IIS)

51 51

3.2 TRIỂN KHAI ỨNG DỤNG WEB (PUBLISH WEB SITE)

Biên dịch ứng dụng và copy website đến thư mục

cụ thể.

Các tâp tin code behide đã được biên dịch thành .dll

Thao tác: Click phải vào project Publish website

© Dương Thành Phết

Sử dụng chức năng Publish web site

www.thayphet.net - [email protected]

52 52

© Dương Thành Phết

Khai báo đường dẫn thư mục sẽ chứa website publish đến

Mở cửa sổ Explorer, ta sẽ thấy thư mục được tạo

Vào IIS tạo thư mục ảo ánh xạ đến thư mục đã tạo

Kiểm tra : http://localhost/<Tên_ánh_xạ>

Sử dụng thư mục đã tạo để Upload lên Webserver www.thayphet.net - [email protected]

3.2 TRIỂN KHAI ỨNG DỤNG WEB (PUBLISH WEB SITE)

53 53

Công dụng cũng giống như chức năng Publish web

site nhưng không có sẳn trong bộ MS VS 2005 mã

phải tự cài đặt

© Dương Thành Phết

Sử dụng công cụ Web deployment Setup

www.thayphet.net - [email protected]

3.2 TRIỂN KHAI ỨNG DỤNG WEB (PUBLISH WEB SITE)

54 54

4. CÁC ĐỐI TƯỢNG TRONG ASP.NET

www.thayphet.net - [email protected] © Dương Thành Phết

4.1. Đối tượng Response Và Request

4.2. Đối tượng Session Và Cookies

4.3. Đối tượng Server Và Application

4.4. Tâp tin Global.asax Và Web.config

55 55

4.1. ĐỐI TƯỢNG RESPONSE VÀ REQUEST

www.thayphet.net - [email protected] © Dương Thành Phết

4.1.1. Đối tượng Response

4.1.2. Đối tượng Request

56 56

4.1.1 ĐỐI TƯỢNG RESPONSE

www.thayphet.net - [email protected] © Dương Thành Phết

Đối tượng Response được sử dụng để giao tiếp với

Client, nó quản lý và điều phối thông tin từ Web

Server đến các trình duyệt của người dùng.

Phương thức Write

Dùng để ghi kết quả lên trình duyệt của máy khách,

có thể là văn bản, thẻ HTML, Mã Script . . .

Response.Write ("Chào các bạn!");

String s = DateTime.Today.ToShortDateString();

Response.Write(" <BR><B>" + "Hôm nay là: " + s + "</B>"

57 57

www.thayphet.net - [email protected] © Dương Thành Phết

Phương thức Redirect

Dùng để chuyển yêu cầu truy câp của máy khách

đến 1 URL khác

Ví dụ:

'Nếu đăng nhâp thành công

If (<Kiểm tra đăng nhâp>)

Response.Redirect(“Default.aspx");

Else

Response.Redirect(“Login.aspx");

ReSponse.Redirect(“URL chuyển đến”)

4.1.1 ĐỐI TƯỢNG RESPONSE

58 58

www.thayphet.net - [email protected] © Dương Thành Phết

Ví dụ: Sử dụng đối tượng Response để thực hiện

việc download tập tin.

Private Sub lnkDownload_Click( . . . )

String sTap_tin = "De cuongonthiTN2010.pdf";

String sDuong_dan ;

sDuong_dan = Server.MapPath("~/") + sTap_tin;

Response.AddHeader("Content-Disposition","attachment;

filename=" + sTap_tin);

Response.WriteFile(sDuong_dan);

Response.End();

End Sub

4.1.1 ĐỐI TƯỢNG RESPONSE

59 59

4.1.2 ĐỐI TƯỢNG REQUEST

www.thayphet.net - [email protected] © Dương Thành Phết

Đối tượng Request được dùng để nhân thông tin từ

trình duyệt của người dùng gởi về cho WebServer.

Thuộc tính QueryString

Như đã biết URL(Uniform Resource Locators) của

1 trang có cấu trúc như sau:

QueryString - gọi là chuỗi tham số cấu trúc như sau:

Các cặp [<Tham_so>=<Gia_tri>] phân cách nhau

bằng dấu &

60 60

www.thayphet.net - [email protected] © Dương Thành Phết

Thuộc tính QueryString cho phép chúng ta nhân

các giá trị truyền qua chuỗi tham số này.

VD: Giả sử người dùng gởi thông điệp đến Web

Server yêu cầu trang: “ChitietSP?Ma=2". Để lấy giá

trị tham số này ta thực hiện:

String Masp = Request.QueryString["Ma"];

Response.Write(Masp);

Request.QueryString[“Tên_tham_số”];

4.1.2 ĐỐI TƯỢNG REQUEST

61 61

4.2. ĐỐI TƯỢNG SESSION

www.thayphet.net - [email protected] © Dương Thành Phết

4.2.1. Đối tượng Session

4.2.2. Đối tượng Cookies

62 62

www.thayphet.net - [email protected] © Dương Thành Phết

4.2.1. ĐỐI TƯỢNG SESSION

Được dùng để lưu trữ thông tin của người dùng

trong ứng dụng.

Thông tin được lưu trữ trong Session là của một

người dùng trong một phiên làm việc cụ thể.

Web Server sẽ tự động tạo một đối tượng Session

cho mỗi người dùng mới kết nối vào ứng dụng và tự

động hủy chúng nếu người dùng còn không làm việc

với ứng dụng nữa.

Đối tượng Session khá hữu hiệu trong việc thực

hiện "lưu vết và quản lý thông tin của người dùng".

63 63

www.thayphet.net - [email protected] © Dương Thành Phết

Thuộc tính Timeout

Qui định khoảng thời gian (phút) mà Web Server duy

trì đối tượng Session nếu người dùng không gởi yêu

cầu về lại Server (mặc định là 20 phút)

Nếu không có yêu cầu nào kể từ lần yêu cầu sau

cùng một khoảng thời gian là <Timeout> phút, đối

tượng Session mà Web server cấp cho lần làm việc đó

sẽ tự động được giải phóng.

Những yêu cầu sau đó được Web server coi như là

một người dùng mới, và đương nhiên sẽ được cấp một

đối tượng Session mới.

4.2.1. ĐỐI TƯỢNG SESSION

64 64

www.thayphet.net - [email protected] © Dương Thành Phết

4.2.2 ĐỐI TƯỢNG COOKIES

Nếu đã đăng ký là thành viên của một trang web

thì khi yêu cầu đến trang web đó, sẽ nhân ra là thành

viên. Vì những thông tin được lưu tại máy Client

trong đối tương Cookies.

Như vây Cookie như một tâp tin (kích thước nhỏ)

được lưu tại máy của người dùng. Dùng để nhân ra

người đang viếng thăm

65 65

www.thayphet.net - [email protected] © Dương Thành Phết

Phương thức Abandon

Trong khoảng thời gian <Timeout> đối tượng Session

được duy trì dù không có sự tương tác của Client.

Web server phải sử dụng một vùng nhớ để duy trì đối

tượng Session trong một khoảng thời gian tương ứng.

Phương thức Abandon của đối tượng Session sẽ giải

phóng vùng nhớ trên Web Server ngay khi được gọi.

Những yêu cầu sau đó được Web server coi như là

một người dùng mới.

4.2.2 ĐỐI TƯỢNG COOKIES

66 66

www.thayphet.net - [email protected] © Dương Thành Phết

Sử dụng biến toàn cục với Session

Tạo biến Session

Session["Tên biến“] = <giá trị>;

Lấy giá trị từ biến Session

<biến> = Session["Tên biến“]

Ví dụ:

Lưu trữ thông tin khi người dùng đăng nhâp hệ

thống thành công

Session["TenDN“] = “phetit"

4.2.2 ĐỐI TƯỢNG COOKIES

67 67

www.thayphet.net - [email protected] © Dương Thành Phết

Thêm Cookies

Response.Cookies.Add(<HttpCookie>);

Ví dụ:Tạo Cookies TenDN lưu tên đăng nhâp của người dùng 3

ngày kể từ ngày hiện hành trên Web Server.

HttpCookie cookTenDN = new HttpCookie("TenDN");

cookTenDN.Value = "phetit";

cookTenDN.Expires = DateTime.Today.AddDays(3);

Response.Cookies.Add(cookTenDN);

Lấy giá trị từ Cookies

Request.Cookies[“Tên Cookies”].Value;

HttpCookie cookTenDN = Request.Cookies["TenDN"];

if (cookTenDN != null)

Response.Write(Request.Cookies["TenDN"].Value);

4.2.2 ĐỐI TƯỢNG COOKIES

68 68

4.3. ĐỐI TƯỢNG APPLICATION VÀ SERVER

www.thayphet.net - [email protected] © Dương Thành Phết

4.3.2 Đối tượng Server

4.3.1 Đối tượng Application

69 69

www.thayphet.net - [email protected] © Dương Thành Phết

Application và Session là 2 đối tượng khá quan trọng

trong ứng dụng web, giúp các trang aspx có thể liên kết

và trao đổi dữ liệu cho nhau

4.3.1. ĐỐI TƯỢNG APPLICATION

70 70

www.thayphet.net - [email protected] © Dương Thành Phết

Được sử dụng để quản lý tất cả các thông tin của một

ứng dụng web. Thông tin được lưu trữ trong đối

tượng Application có thể được xử lý trong bất kỳ trang

aspx nào trong suốt chu kỳ sống của ứng dụng.

Sử dụng biến Application

Tạo biến Application

Application["Tên biến“] = <giá trị>;

Lấy giá trị từ biến Application

<biến> = Application["Tên biến“];

Ví dụ:

Application.Lock();

Application["So_lan_truy_cap“] = 0;

Application.UnLock();

s = Application["So_lan_truy_cap"];

4.3.1. ĐỐI TƯỢNG APPLICATION

71 71

www.thayphet.net - [email protected] © Dương Thành Phết

4.3.2 ĐỐI TƯỢNG SERVER

Được sử dụng để cung cấp thông tin của Server cho

ứng dụng.

Thuộc tính MachineName: Dùng để lấy tên của

Web Server.

Phương thức Mappath: Dùng để lấy đường dẫn

vât lý hoặc đường dẫn ảo đến một thư mục trên

Server.

Phương thức Transfer(<Đường dẫn trang>):

Ngừng thi hành trang hiện hành, gởi yêu cầu mới

đến trang được gọi thực hiện.

72 72

5. TẬP TIN QUẢN LÝ VÀ CẤU HÌNH ỨNG DỤNG

www.thayphet.net - [email protected] © Dương Thành Phết

5.1 Tập tin Global.asax

5.2 Tập tin Web.config

73 73

www.thayphet.net - [email protected] © Dương Thành Phết

5.1 TẬP TIN GLOBAL.ASAX

Được dùng để:

Khai báo và khởi tạo giá trị cho các biến Application,

Session.

Viết xử lý cho các sự kiện của 2 đối tượng

Application và Session.

Một project chỉ có 1 tâp tin Global.asax

Cách tạo:

74 74

www.thayphet.net - [email protected] © Dương Thành Phết

Cấu trúc tập tin Global.asax

5.1 TẬP TIN GLOBAL.ASAX

75 75

www.thayphet.net - [email protected] © Dương Thành Phết

Application_Start: Xảy ra một lần đầu tiên khi bất kỳ

trang nào trong ứng dụng được gọi.

void Application_Start(object sender, EventArgs e)

{

// Code that runs on application startup

Application["So_luot_truy_cap"] = 0;

Application["So_nguoi_online"] = 0;

}

5.1 TẬP TIN GLOBAL.ASAX

76 76

www.thayphet.net - [email protected] © Dương Thành Phết

Application_End: Xảy ra khi dừng hoạt động của

WebServer. Ví dụ xử lý ghi nhân thông tin Số lượt truy

câp vào cơ sở dữ liệu (nếu cần).

5.1 TẬP TIN GLOBAL.ASAX

77 77

www.thayphet.net - [email protected] © Dương Thành Phết

Session_Start: Xảy ra khi người dùng mới yêu cầu đến

bất kỳ trang aspx của ứng dụng.

void Session_Start(object sender, EventArgs e)

{

// Code that runs when a new session is started

Application["So_luot_truy_cap"] =

int.Parse(Application["So_luot_truy_cap"].ToString()) + 1;

Application["So_nguoi_online"] =

int.Parse(Application["So_nguoi_online"].ToString()) + 1;

}

5.1 TẬP TIN GLOBAL.ASAX

78 78

www.thayphet.net - [email protected] © Dương Thành Phết

Session_End: Xảy ra khi phiên làm việc không có gởi yêu

cầu hoặc làm tươi trang aspx của ứng dụng web trong

một khoảng thời gian (mặc định là 20 phút) (Kết thúc

phiên làm việc).

void Session_End(object sender, EventArgs e)

{

// Code that runs when a session ends.

Application["So_luot_truy_cap"] =

int.Parse(Application["So_luot_truy_cap"].ToString()) - 1;

Application["So_nguoi_online"] =

int.Parse(Application["So_nguoi_online"].ToString()) - 1;

}

5.1 TẬP TIN GLOBAL.ASAX

79 79

www.thayphet.net - [email protected] © Dương Thành Phết

5.2 TẬP TIN WEB.CONFIG

Web.config là một tâp tin văn bản viết theo định dạng

XML sử dụng để lưu trữ thông tin cấu hình của một

ứng dụng

Được tự động tạo ra khi chúng ta tạo mới ứng dụng.

Bổ sung thông tin cho ứng dụng

<appSettings>

<add key=“tên khoá” value=“giá trị khoá” />

<appSettings/>

Truy xuất thông tin

System.Configuration.ConfigurationSettinger.

AppSettings[“Khoá”];

80 80

www.thayphet.net - [email protected] © Dương Thành Phết

Ví dụ: Tạo biến cấu hình dùng để lưu chuỗi kết nối

CSDL SQLServer

<connectionStrings>

<add name="KetnoiCSDL" connectionString=

"Data Source=PC\SQLEXPRESS;

Initial Catalog=QLBansach;Integrated Security=True“

providerName="System.Data.SqlClient" />

</connectionStrings>

string StrCnn =

ConfigurationManager.ConnectionStrings["KetnoiCSDL"].

ConnectionString.ToString();

Lấy thông tin chuỗi kết nối

5.2 TẬP TIN WEB.CONFIG

81

THE END.

www.thayphet.net - [email protected] © Dương Thành Phết

KHOA CAO ĐẲNG THỰC HÀNH

Chương 4

TỔNG QUAN VỀ ASP.NET VÀ

QUẢN LÝ ỨNG DỤNG WEB