Giáo trình Thiết kế và Lập trình Website - Chương 4: Tổng quan về ASP.NET và Quản lý ứng dụng Web

pdf 81 trang huongle 5540
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Thiết kế và Lập trình Website - Chương 4: Tổng quan về ASP.NET và Quản lý ứng dụng Web", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_thiet_ke_va_lap_trinh_website_chuong_4_tong_quan.pdf

Nội dung text: Giáo trình Thiết kế và Lập trình Website - Chương 4: Tổng quan về ASP.NET và Quản lý ứng dụng Web

  1. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  2. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  3. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  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 4 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  5. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  6. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  7. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  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. 8 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  9. 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. 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. 9 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  10. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  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 11 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  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. 12 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  13. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  14. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  15. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  16. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  17. 1.4. NET PHATFORM VÀ .NET FRAMEWORK 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, 17 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  18. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  19. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  20. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  21. 2.1. KHỞI ĐỘNG MS VISUAL STUDIO .NET Start Programs Microsoft Visual Studio 2005 Microsoft Visual Studio 2005 21 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  22. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  23. 2.2. TẠO ỨNG DỤNG WEB Kết quả: Cửa sổ Solution Explorer Trang Default.aspx (Design) 23 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  24. 2.2. TẠO ỨNG DỤNG WEB Trang Default.aspx (Source) Trang Default.aspx.cs 24 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  25. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  26. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  27. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  28. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  29. 2.5 PHÂN LOẠI TẬP TIN TRONG ASP.NET: 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 29 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  30. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  31. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  32. 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  © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  33. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  34. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  35. 2.6.2 PROPERTY WINDOW 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. 35 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  36. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  37. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  38. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  39. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  40. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  41. 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ỉ : hoặc 41 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  42. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  43. 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ỉ : hoặc 43 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  44. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  45. 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ỉ 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ỉ: 45 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  46. 3.1 PHẦN MỀM WEB SERVER(IIS) Trên Windows Vista/ Windows 7 Start Settings Control Panel Administratrive tools IIS Manager 46 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  47. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  48. 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 Khai báo thư mục vật lý Khai báo nhãn thư mục ảo (Myweb) (D:\MyWebsite) 48 Next Finish © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  49. 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ý 49 OK © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  50. 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: 50 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  51. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  52. 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 : 52  Sử dụng thư mục đã tạo để Upload lên Webserver © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  53. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  54. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  55. 4.1. ĐỐI TƯỢNG RESPONSE VÀ REQUEST 4.1.1. Đối tượng Response 4.1.2. Đối tượng Request 55 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  56. 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(); 56 Response.Write(" " + "Hôm nay là: " + s + " " © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  57. 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”) Ví dụ: 'Nếu đăng nhập thành công If ( ) Response.Redirect(“Default.aspx"); Else Response.Redirect(“Login.aspx"); 57 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  58. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  59. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  60. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  61. 4.2. ĐỐI TƯỢNG SESSION 4.2.1. Đối tượng Session 4.2.2. Đối tượng Cookies 61 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  62. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  63. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  64. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  65. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  66. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  67. 4.2.2 ĐỐI TƯỢNG COOKIES Thêm Cookies Response.Cookies.Add( ); 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  68. 4.3. ĐỐI TƯỢNG APPLICATION VÀ SERVER 4.3.1 Đối tượng Application 4.3.2 Đối tượng Server 68 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  69. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  70. 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.  Sử dụng biến Application Tạo biến Application Application["Tên biến“] = ; Lấy giá trị từ biến Application = Application["Tên biến“]; Ví dụ: Application.Lock(); Application["So_lan_truy_cap“] = 0; Application.UnLock(); s = Application["So_lan_truy_cap"]; 70 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  71. 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ừ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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  72. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  73. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  74. 5.1 TẬP TIN GLOBAL.ASAX Cấu trúc tập tin Global.asax 74 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  75. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  76. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  77. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  78. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  79. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  80. 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 Lấy thông tin chuỗi kết nối string StrCnn = ConfigurationManager.ConnectionStrings["KetnoiCSDL"]. ConnectionString.ToString(); 80 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com
  81. 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 © Dương Thành Phết www.thayphet.net - phetcm@gmail.com