一.設(shè)置Cookie的2種方式1. 2. hcCookie.Expires Response.Cookies.Add(hcCookie); 從Cookie中取值: string 注意: 1.Cookie若沒指定時(shí)間,則默認(rèn)為到瀏覽器關(guān)閉為止,設(shè)為MaxValue則表示永不過期. 2.另外Cookie中只能存字符串,即Response.Cookie[“Quantity”] 二.如何接受URL中參數(shù)Request.QueryString[“URL參數(shù)后變量名”]; Request.Form[“URL參數(shù)后名”] C#中沒有類似于JAVA中的轉(zhuǎn)發(fā)功能,沒法傳對(duì)象,要想傳對(duì)象只能放在session中,或者viewstate頁面狀態(tài)保持中 三.ASP.NET頁面的生命周期:A.初始化 B.加載實(shí)例:PostBack--ViewState--<%@ C.服務(wù)器控件驗(yàn)證 D.控件事件 E.Render渲染顯示 F.卸載 一般一些敏感類數(shù)據(jù):用戶名、密碼、權(quán)限等存在session中,而用戶上一次登錄的時(shí)間存放在cookie中 四.Session相關(guān)獲得sessionId:Session.SessionID ∵SessionID是保存在Cookies中的,而Cookies是可被禁用掉的 ∴可采用:URL重寫技術(shù),將SessionID附加到URL中;使用表單隱藏技術(shù),服務(wù)器將SessionID以隱藏字段的方式添加到表單中。 1.Session語法: Session[“名”] 2.獲取: 變量 3.特征: session一旦過期,Server即刻清除Session對(duì)象,釋放所占資源 4.屬性: Timeout:設(shè)置超時(shí)時(shí)間,單位:分; 5.方法: Clear():從會(huì)話狀態(tài)集合中清除所有鍵和值(清空值,內(nèi)存中保留空間) Abandon():結(jié)束Session,取消當(dāng)前會(huì)話(安全退出功能),因?yàn)閮?yōu)先級(jí)較低,在當(dāng)前頁面執(zhí)行完成過以后才執(zhí)行,這也是為什么“安全退出”按鈕點(diǎn)擊后頁面會(huì)跳轉(zhuǎn)一下。 f.Session在配置文件中的一些設(shè)置: <system.web> <sessionState </system.web> 6.Session中可以存放對(duì)象: User user.ID userName Session[“userInfo”] 可根據(jù)session知否為空來進(jìn)行判斷--->用于訪問控制 if(Session[“userInfo”]==null) { Response.Redirect(“index.aspx”); } else { If(!Page.IsPostBack) { //...歡迎致辭等 } 讀取session中的對(duì)象:User 五.Application相關(guān)賦值: Application["名"] 取值: 變量 Global.asax文件:全局應(yīng)用程序類 Application包含5個(gè)事件 Application_Start Application_End Application_Error Session_Start Session_End 使用Application的時(shí)候需要進(jìn)行Lock()操作,eg: 統(tǒng)計(jì)人數(shù)功能,在Application_Start事件中: Application.Lock(); Application["count"] Application.Unlock(); 在Session_Start中實(shí)現(xiàn)自增: Application.Lock(); Application["count"]= Application.Unlock(); 六.Request和Server屬性瀏覽器類型:Request.Browser.Browser 瀏覽器版本:Request.Browser.Version 客戶端操作系統(tǒng)版本:Rquest.Browser.PlatForm 客戶端IP地址:Request.UserHostAddress 客戶端主機(jī)名:Request.UserHostName 服務(wù)器名稱:Server.MachineName 服務(wù)器根目錄:Server.MapPath |
|