ASP.NET中的對象描述
幾個asp.net中的對象:
1.Request:可以訪問關于請求Web頁面的個人或進程的信息
2.Response:提供一種方法,以準確控制如何將響應發送回發出請求的人那里
3.Server:提供一系列有用的與Web相關的實用程序。
4.Application:為經常使用的信息提供了一個有用的Web站點存儲位置
5.Session:可以為每個用戶的會話存儲信息。
ASP.NET中的對象·Request
Request可以訪問關于請求Web頁面的個人或進程的信息。Request對象可以從個人的Web瀏覽器向我們有效的傳遞消息。
比較有用的兩個屬性為:
Cookies:通過這個屬性可以查看訪問者以前在本站的cookies
QueryString:返回任何使用GET傳輸到頁面的參數。
ASP.NET中的對象·Response
Response提供一種方法,以準確控制如何將響應發送回發出請求的人那里。Response對象可以訪問即將發送回請求Web瀏覽器的http響應。
常用屬性:
1. Redirect:它將用戶重定向到另一個頁面
2. Write:將字符串寫入html流。
Server
ASP.NET中的對象·Server
提供一系列有用的與Web相關的實用程序。
常用屬性:
MapPath:此屬性帶有一個虛擬路徑的參數
比如MapPath(“/webapp/myfile.aspx”),返回該文件在物理磁盤的準確位置
狀態處理:
包括Application,Session,Cookies
主要要注意的有狀態的作用域,狀態存儲位置,狀態如何改變等。
ASP.NET中的對象·Application
Application為經常使用的信息提供了一個有用的Web站點存儲位置
Application中的信息可以被網站的所有頁面訪問。
Application的初始配置:
在應用程序啟動時配置初始狀態,在Global.asax中配置
- protected void Application_Start(Object sender, EventArgs e)
- {
- Application["UserCount"] = 0;
- }
使用Lock和Unlock避免兩個頁面同時修改狀態
- Application.Lock();
- Application["UserCount"] = (int)Application["UserCount"]+1;
- Application.UnLock();
Application幾點說明:
1. 它用于經常使用的數據,如果只是偶爾使用,可以把信息存儲在磁盤的文件中,大部分情況下,web.config文件可以完成這個任務。
2. Application對象是一個集合對象,它除了包含文本信息外,也可以存儲對象。
3. 如果站點開始就有很大的通信量,則使用Web.config文件,不要用Application狀態
ASP.NET中的對象·Session
它可以為每個用戶的會話存儲信息。默認的超時時間為20分鐘,用戶關閉網頁后自動結束。
常用屬性:
Abandon():此方法結束當前的會話,清楚會話中的所有信息。
Clear():清除會話中所有信息,不結束會話。
IsNewSession:如果在用戶訪問當前頁面時創建了繪畫,則此屬性返回true,在使用會話前需要使用某些數據初始化會話時,該屬性很有用。
TimeOut:此屬性在會話終于之前以分鐘為單位獲取和設置閑置時間。默認時間為20分鐘
- if (Session["test"]==null)
- {
- Session["test"] = 1;
- }
- else
- {
- Session["test"] = (int)Session["test"]+1;
- }
Session說明:
1. 存儲在Web服務器端,
2. 實際信息與每一位訪問者相關
3. 是對象集合,可以存儲對象
4. 不要在會話中存儲不常時間的東西,不要在會話中存儲大量東西
Cookies
存儲與每一位用戶相關的小段信息,通常也與網站相關。存儲在用戶的硬盤上,通常期限比Session的期限大。
Cookies的生存期設置
- DateTime dt = DateTime.Now;
- TimeSpan timeSpan = new TimeSpan(30,0,0,0); //30天
- if (Request.Cookies["test"]!=null)
- {
- Request.Cookies["test"].Expires = dt.Add(timeSpan);
- }
- cookies例子
- if (Request.Cookies["test"]==null)
- {
- int i = 1;
- HttpCookie c = new HttpCookie("test");
- c.Value = "1";
- Request.Cookies.Add(c);
- }
- else
- {
- int k = Convert.ToInt32(Request.Cookies["test"].Value)+1;
- Request.Cookies["test"].Value = k.ToString();
- }
【編輯推薦】
- ASP.NET1.1驗證碼產生的原理及應用
- 靜態文件處理:ASP.NET1.1和ASP.NET2.0對之不同
- 在ASP.NET中執行windows程序(ASP.NET1.1)
- 對asp.net1.1開發模板類的修改說明
- 用ASP.NET連接Oracle9i(ASP.NET1.1)