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)

Chương 4 TỔNG QUAN VỀ ASP.NET VÀ QUẢN LÝ ỨNG DỤNG WEB

1

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

NỘI DUNG

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

2 2

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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

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

3 3

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

4 4

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 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, …

5 5

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 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.

6 6

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 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.

7 7

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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.

8 8

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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.

lập

ASP.Net sử dụng phong cách 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.

9 9

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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

10 10

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

11 11

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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.

12 12

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

1.4. NET PHATFORM VÀ .NET FRAMEWORK

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

 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!

13 13

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

1.4. NET PHATFORM VÀ .NET FRAMEWORK

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)

14 14

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

1.4. NET PHATFORM VÀ .NET FRAMEWORK

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.

15 15

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

1.4. NET PHATFORM VÀ .NET FRAMEWORK

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.

16 16

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

1.4. NET PHATFORM VÀ .NET FRAMEWORK

thư viện này

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ộ là SqlDataAdapter, SqlCommand, DataSet, XMLReader, XMLWriter,…

17 17

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

1.4. NET PHATFORM VÀ .NET FRAMEWORK

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. …

18 18

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

1.4. NET PHATFORM VÀ .NET FRAMEWORK

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.

19 19

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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

2.2. Tạo ứng dụng Web

20 20

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 Start  Programs  Microsoft Visual Studio 2005  Microsoft Visual Studio 2005

21 21

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.2. TẠO ỨNG DỤNG WEB

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

22 22

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.2. TẠO ỨNG DỤNG WEB

Kết quả:

Cửa sổ Solution Explorer

Trang Default.aspx (Design)

23 23

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.2. TẠO ỨNG DỤNG WEB

Trang Default.aspx (Source)

Trang Default.aspx.cs

24 24

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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

25 25

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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…

26 26

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.4. THI HÀNH ỨNG DỤNG

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

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

27 27

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.4. THI HÀNH ỨNG DỤNG

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

28 28

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

Diễn giải

.asax

tin quản

lý các sự kiện của ứng dụng Tập (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

29 29

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

2.6.1 Solution Explorer

2.6.2 Property Window

2.6.3 Toolbox

2.6.4 Document Outline Window

30 30

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.6.1 SOLUTION EXPLORER

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:

31 31

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.6.1 SOLUTION EXPLORER

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  …

32 32

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.6.1 SOLUTION EXPLORER

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.

33 33

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.6.1 SOLUTION EXPLORER

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.

34 34

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.6.2 PROPERTY WINDOW

Menu View | Properties Window. Dùng để thiết lập thuộc tính cho trang web và

Hiển thị cửa số Properties Window: các điều khiển có trong trang web.

35 35

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.6.3 TOOLBOX

Hiển thị Toolbox: Menu View  Toolbox Dùng để tạo các điều khiển trân trang.

36 36

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

2.6.4 DOCUMENT OUTLINE WINDOW

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.

37 37

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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

3.2 Triển khai ứng dụng web

38 38

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 Giới thiệu về 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

39 39

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 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.

40 40

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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

41 41

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 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.

42 42

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

Để 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

43 43

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 Cấu hình Web Server

Trên Windows 2000/XP

Start  Settings  Control Panel  Administratrive tools  Internet Infomtic Services  Click phải Default Web site

44 44

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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

45 45

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

Trên Windows Vista/ Windows 7

 Start  Settings  Control Panel  Administratrive tools  IIS Manager

46 46

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

Quy định thư mục gốc ứng dụng: Directory Browsing Quy định trang chủ mặc định: Default Document

47 47

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 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.

Trên Windows 2000/XP

Click phải Default WebsiteNew/ Virtual Directory

 Next

báo

thư mục

vật

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

Khai (D:\MyWebsite)

Next  Finish

48 48

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

Trên Windows Vista/ Windows 7

Click phải: Default WebsiteAdd Application

Tên ánh xạ

Thư mục vật lý

OK

49 49

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

Truy cập để kiểm tra

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

50 50

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

 Sử dụng chức năng 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

51 51

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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/  Sử dụng thư mục đã tạo để Upload lên Webserver

52 52

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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

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

53 53

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

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

54 54

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

4.1.1. Đối tượng Response

4.1.2. Đối tượng Request

55 55

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.1.1 ĐỐI TƯỢNG RESPONSE

Đố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("
" + "Hôm nay là: " + s + ""

56 56

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.1.1 ĐỐI TƯỢNG RESPONSE

 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

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

Response.Redirect(“Default.aspx");

Ví dụ: 'Nếu đăng nhập thành công If () Else

Response.Redirect(“Login.aspx");

57 57

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.1.1 ĐỐI TƯỢNG RESPONSE

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

58 58

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.1.2 ĐỐI TƯỢNG REQUEST

Đố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 [=] phân cách nhau bằng dấu &

59 59

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.1.2 ĐỐI TƯỢNG REQUEST

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.

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

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);

60 60

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.2. ĐỐI TƯỢNG SESSION

4.2.1. Đối tượng Session

4.2.2. Đối tượng Cookies

61 61

www.thayphet.net - phetcm@gmail.com © 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".

62 62

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.2.1. ĐỐI TƯỢNG SESSION

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à 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.

63 63

www.thayphet.net - phetcm@gmail.com © 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

64 64

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.2.2 ĐỐI TƯỢNG COOKIES

Phương thức Abandon

Trong khoảng thời gian đố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.

65 65

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.2.2 ĐỐI TƯỢNG COOKIES

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

 Tạo biến Session

Session["Tên biến“] = ;

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

= 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"

66 66

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.2.2 ĐỐI TƯỢNG COOKIES

Response.Cookies.Add();

Thêm Cookies 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);

67 67

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

4.3.1 Đối tượng Application

4.3.2 Đối tượng Server

68 68

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.3.1. ĐỐI TƯỢNG APPLICATION

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

69 69

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

4.3.1. ĐỐI TƯỢNG APPLICATION

Đượ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.

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

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

 Sử dụng biến Application Tạo biến Application Lấy giá trị từ biến Application Ví dụ:

Application.Lock(); Application["So_lan_truy_cap“] = 0; Application.UnLock(); s = Application["So_lan_truy_cap"];

70 70

www.thayphet.net - phetcm@gmail.com © 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.

thức Transfer(<Đường dẫn

 Phương 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.

71 71

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

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

5.1 Tập tin Global.asax

5.2 Tập tin Web.config

72 72

www.thayphet.net - phetcm@gmail.com © 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:

73 73

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

5.1 TẬP TIN GLOBAL.ASAX

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

74 74

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

5.1 TẬP TIN GLOBAL.ASAX

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; }

75 75

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

5.1 TẬP TIN GLOBAL.ASAX

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

76 76

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

5.1 TẬP TIN GLOBAL.ASAX

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;

}

77 77

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

5.1 TẬP TIN GLOBAL.ASAX

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; }

78 78

www.thayphet.net - phetcm@gmail.com © 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

Truy xuất thông tin System.Configuration.ConfigurationSettinger. AppSettings[“Khoá”];

79 79

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết

5.2 TẬP TIN WEB.CONFIG

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

"Data Source=PC\SQLEXPRESS; Initial Catalog=QLBansach;Integrated Security=True“ providerName="System.Data.SqlClient" />

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

string StrCnn = ConfigurationManager.ConnectionStrings["KetnoiCSDL"].

ConnectionString.ToString();

80 80

www.thayphet.net - phetcm@gmail.com © 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

THE END.

81

www.thayphet.net - phetcm@gmail.com © Dương Thành Phết