標籤:
第二章
4.1 Application對象 在.NET開發中具有舉足輕重的作用
Application對象的作用和運行機制
儲存所有使用者的資訊
將一個網站建立一個應用程式
一 . 建立一個Global檔案 網站->添加新項->全域應用程式類
全域應用程式觸發全域頁面 (也就是說全域應用程式適用於所有當前項目中頁面)
Application["dk_users"] 顯示人數 其看做成變數 運行時資訊
在應用程式類中
Application_Start //程式啟動時運行代碼 不支援Response.Write()寫 Read(讀)
Application.Lock(); //鎖定應用程式 為了與之同步
Application.UnLock(); //解鎖
Application_Error()方法是標準出錯
應用程式一個項目只能建立一個
二. Response.概念和作用
擷取用戶端資料和資訊 以及頁面參數
對線廣泛 瞭解頁面緩衝技術
Response.BufferOutput =true 開啟緩衝 設定緩衝完成後輸出
Response.Write("使用緩衝機制!"); //該代碼被Clear清空了
Response.Clear(); //清除緩衝區內容
Response.BufferOutput = false;//關閉緩衝
Response.Write("不使用緩衝機制");
Response.Clear(); //沒有開始緩衝機制代碼無效
伺服器日誌
Response.AppendToLog("這是一個伺服器記錄檔資訊!");
設定日誌路徑
//緩衝發送
Response.Write("第一條資訊<br/>");
Response.Flush();//所有緩衝發送至用戶端
Response.Write("第二條資訊<br/>");
Response.End();//觸發應用程式事件Application_EndRequest 程式停止執行
Response.Write("第三條資訊<br/>");
//頁面重新導向
Response.Status = "302頁面重新定向";
Response.AppendHeader("Location","http://www.baidu.com");//HTTP輸出資料流
//設定圖片
// Response.ContentType = "image/JPEG"; //擷取或設定輸出資料流類型
//Response.WriteFile("QQ圖片20160523152924.jpg");//設定輸出
****//頁面傳遞參數****
<a href="Application.aspx?var1=130&var2=text&var3=傳遞參數">頁面傳遞參數</a></div>
Application.aspx?var1=130& 此賦值後 選擇所傳參數的頁面在cs檔案中等價於:Request.QueryString ["var1"]
Request.QueryString ["var1"] 此變數就等於130
//輸出用戶端常用屬性資訊
foreach(var p in Request .UserLanguages ){
Response.Write("UserLanguages屬性:"+p.ToString () +"<br/>");
}
Response.Write("UserHostrName屬性:" + Request.UserHostName.ToString() + "<br/>");//用戶端Ip地址資訊
Response.Write("UserHostArrress屬性:" + Request.UserHostAddress.ToString() + "<br/>");
Response.Write("Url屬性" + Request.Url.ToString() + "<br/>");//網頁資訊
Response.Write("PhysicalPath屬性:" + Request.PhysicalPath.ToString() + "<br/>");//用戶端路徑檔案名稱資訊
Response.Write("PhysicalApplicationPath屬性:" + Request.PhysicalApplicationPath.ToString() + "<br/>");//用戶端路徑資訊
}
4.3 Session對線 回傳
Session 是指使用者從開啟瀏覽器訪問伺服器到關閉瀏覽器之間一個工作階段狀態
Session可以儲存使用者訪問伺服器的一些傳遞資料資訊。
Session全域變數
Session變數到期
Session添加刪除操作
4.4 HttpCookie Cookie 擷取使用者和儲存上一次的資訊
而且永久儲存 只要不重新編譯串連。
注意: 只適合當前操作 , 編譯串連時會到期
protected void Page_Load(object sender, EventArgs e)
{
HttpCookie N_Cookie = new HttpCookie("C_name");//建立一個Cookie鍵
N_Cookie.Value = "第一資料";
Response.Cookies.Add(N_Cookie );//添加Cookie
Response.Write(Response .Cookies .Get("C_name").Value.ToString ()+"<br/>");
//Response.Cookies.Get("C_name")//擷取 Set(N_Coolie)設定
N_Cookie.Value = "變成第二個資料";//重新設定
Response.Cookies.Set(N_Cookie );
Response.Write(Response.Cookies.Get("C_name").Value .ToString ()+"<br/>");
Response.Cookies.Remove("C_name"); //刪除
}
}
} //Cookie對象只是設定索引值以及設定索引值的值 擷取及其更新Cookie集合是Cookies
4.5 Server對象的實際運用
Server是伺服器應用請求的助手
防止指令碼入侵
用對齊編碼轉換
//Server.UrlDecode 解碼 Server.Encode編碼
4.6綜合練習
本章節講解的Cookie會話是通過瀏覽器的Cookie儲存來實現記錄使用者資訊的
如果使用者的瀏覽器不支援Cookie則無法實現
這時需要IIS伺服器特別的設定
.NET Web開發總結(二)