Bài giảng ASP.Net - Chương 2: Các đối tượng trong ASP.Net

Thuộc tính Timeout

 Qui định khoảng thời gian (tính bằng 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. Giá trị 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.1212

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.

 Nghĩa là 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ớ được dùng để duy trì đối tượng

Session trên Web Server ngay khi được gọi thực hiện.

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

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

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

 

pdf26 trang | Chia sẻ: trungkhoi17 | Lượt xem: 391 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng ASP.Net - Chương 2: Các đối tượng trong ASP.Net, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1Chương 2 Các ðối Tượng Trong ASP.Net 1. ðối tượng Response Và Request 2. ðối tượng Application Và Session 3. ðối tượng Server Và Cookies 4. Tập tin Global.asax Và Web.config by: Dương Thành Phết 21. ðối tượng Response Và Request by: Dương Thành Phết 1.1. ðối tượng Response 1.2. ðối tượng Request 31.1 ðối tượng Response by: 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(" " + "Hôm nay là: " + s + "" 4 by: 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 () Response.Redirect(“Default.aspx"); Else Response.Redirect(“Login.aspx"); ReSponse.Redirect(“URL chuyển ñến”) 5 by: 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 61.2 ðối tượng Request by: 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 [=] phân cách nhau bằng dấu & 7 by: 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ố”]; 82. ðối tượng Application Và Session by: 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 9 by: Dương Thành Phết 2.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"]; 10 by: Dương Thành Phết 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". 11 by: Dương Thành Phết Thuộc tính Timeout  Qui ñịnh khoảng thời gian (tính bằng 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. Giá trị 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. 12 by: Dương Thành Phết 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.  Nghĩa là 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ớ ñược dùng ñể duy trì ñối tượng Session trên Web Server ngay khi ñược gọi thực hiện.  Những yêu cầu sau ñó ñược Web server coi như là một người dùng mới. 13 by: 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“] = ; 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" 14 3. ðối tượng Server Và Cookies by: Dương Thành Phết 3.2 ðối tượng Cookies 3.1 ðối tượng Server 15 by: Dương Thành Phết 3.1 ðố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. 16 by: Dương Thành Phết 3.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 17 by: Dương Thành Phết 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); 18 4. Tập tin Global.asax Và Web.config by: Dương Thành Phết 4.1 Tập tin Global.asax 4.2 Tập tin Web.config 19 by: Dương Thành Phết 4.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: 20 by: Dương Thành Phết Cấu trúc tập tin Global.asax 21 by: 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; } 22 by: 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). 23 by: 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; } 24 by: 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; } 25 by: Dương Thành Phết 4.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á”]; 26 by: 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 <add name="KetnoiCSDL" connectionString= "Data Source=PC\SQLEXPRESS; Initial Catalog=QLBansach;Integrated Security=True“ providerName="System.Data.SqlClient" /> string StrCnn = ConfigurationManager.ConnectionStrings["KetnoiCSDL"]. ConnectionString.ToString(); Lấy thông tin chuỗi kết nối

Các file đính kèm theo tài liệu này:

  • pdfbai_giang_asp_net_chuong_1_chuong_2_cac_doi_tuong_trong_asp.pdf