Bài giảng Công nghệ Web - Bài 9: Server Object - Lê Quang Lợi

pdf 15 trang cucquyet12 3540
Bạn đang xem tài liệu "Bài giảng Công nghệ Web - Bài 9: Server Object - Lê Quang Lợi", để 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:

  • pdfbai_giang_cong_nghe_web_bai_9_server_object_le_quang_loi.pdf

Nội dung text: Bài giảng Công nghệ Web - Bài 9: Server Object - Lê Quang Lợi

  1. Bài 9:Server Object Lê Quang Lợi Email: loilequang@gmail.com loilq@utehy.edu.vn
  2. Bài 09: Server Object » State mangement » Server » Application » Sesstion » Cookies » ViewState Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  3. 9.1 Quản lý trạng thái(State Management) » Biến trạng thái: giá trị được lưu trữ trong bộ nhớ » Mỗi biến thể hiện dạng: key => value » Phân loại . Client Side: View State, Hidden Field, Cookies, Control State . Server Side : Session, Application, Caching, Database Chú ý: Mỗi đối tượng có một timeout riêng Timeout là khoảng thời gian quy định hoạt động nếu không có tương tác từ giữa Server và Brower Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  4. 9.1 Quản lý trạng thái(State Management) » Thời gian/ phạm vi hoạt động Application Session ViewState ViewState Session Session time Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  5. 9.2 Application » Biến Application . Tồn tại khi khởi động ứng dụng hoặc khởi động lại . Mất đi khi ứng dụng ngừng hoạt động » Phạm vi: toàn bộ ứng dụng web(kể cả các phiên làm việc) » Lưu trữ trạng thái của ứng dụng: server state » Truy xuất: có thể truy xuất tất cả các trang » Ứng dụng: Đếm số người online và số lần truy cập Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  6. 9.2 Application(file Global.ASCX) » Chứa các sự kiện của ứng dụng web void Application_Start(object sender, EventArgs e) { // ứng dụng bắt đầu hoạt động Bắt đầu } Kết thúc ứng dụng void Application_End(object sender, EventArgs e) { // Ứng dụng ngừng hoạt động } void Application_Error(object sender, EventArgs e){ Sự kiện khi ứng dụng bị // Ứng dụng bị lỗi lỗi } void Session_Start(object sender, EventArgs e){ Bắt đầu Kết thúc phiên // Tạo một sesstion} làm việc void Session_End(object sender, EventArgs e) { } Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  7. 9.2 Application » Tạo biến Application: Application.Add(key,value); » Thay đổi giá trị: Application[index/name]= Value; Application.Content[index/name]= Value; Application.Set(key/name, value); » Sử dụng: var = Application[index/name] » Loại bỏ biến: RemoveAll, Remove Application.Remove(name); » Các sự kiện: Applcation_start, Application_End » Thuộc tính: Count, Keys » Phương thức: Lock, UnLock, Get Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  8. 9.2 Application void Application_Start (object sender, EventArgs e) { Tạo biến Application.Add("counter",0); if (Application["Counter"] == 0) { Lấy dữ liệu Application["Counter"] = 1; Thiết lập } Application.Remove("Counter"); Loại bỏ } Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  9. 9.3 Session » Thể hiện một phiên truy cập . Bắt đầu : khi triệu gọi ứng dụng lần đầu . Kết thúc: thực sự dời bỏi ứng dụng/ vượt TimeOut » Tác dụng trong phiên và trên toàn ứng dụng » Vùng biến nhỏ trên phía server » Ứng dụng: Giỏ hàng, trạng thái đăng nhập, thông tin đăng nhập (phiên làm việc hiện tại) Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  10. 9.3 Session » Tạo biến Session: Session.Add(key,value); » Thay đổi giá trị Session[index/name]= Value; Session.Content[index/name]= Value; Session.Set(key/name, value); » Sử dụng: var = Session [index/name] » Loại bỏ biến: RemoveAll, Remove Session.Remove(name); » Các sự kiện:Session_Start, Session_End » Thuộc tính: Count, Keys, SessionID, LCID » Phương thức: CopyTo Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  11. 9.3 Session bool Islogin = false; Sử dụng giá trị if (this.Session["IsLogin"] == null){ Tạo biến Session.Add("IsLogin", false); } else { string t=Session["Islogin"].ToString(); Sử dụng giá trị islogin = bool.Parse(t); } } Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  12. 9.4 Cookies » Cookies: tương tự như Session » Biến với vùng nhớ nhỏ » Vị trí: lưu trữ Server hoặc Brower » Tầm hoạt động: như Session » Ứng dụng: lưu trữ thông tin cơ bản người dùng, trạng thái đăng nhập, Giỏ hàng, các biến tạm tại một phiên Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  13. 9.4 Cookies » Tạo Cookies: HttpCookie a = new HttpCookie(); » Thêm: Response.Cookies.Add(a); » Thay đổi: a.Value= value:// Thiết lập » Sử dụng: var = a.Value; // lấy giá trị » Loại bỏ: Response.Cookies.Add/Remove/Cleare(a); » Thuộc tính: name, Value, count, Keys » Phương thức: Get, Set Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  14. 9.4 Cookies protected void Page_Load (object sender, EventArgs e){ HttpCookie myCookies = new HttpCookie("name", "value"); this.Request.Cookies.Add (myCookies); } protected void Page_Load (object sender, EventArgs e) { // biến sử dụng cookies HttpCookie myCookies = Request.Cookies["name"]; myCookies.Value = "10"; // gán giá trị string str = myCookies.Value;// lấy giá trị } Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
  15. 9.5 ViewState » Vùng nhớ được lưu trữ phía Client Site » Lưu trữ giá trị tạm thời: page, Controls, Hidden Field » Thiết lập ViewState: EnableViewState=”True/False” » Tạo ViewState: . ViewState["Var"]=Count; . ViewState.Add( key, value); » Sử dụng: string Test=ViewState["TestVal"]; Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY