一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP.NET教程 - ASP.NET網站管理系統退出 清除瀏覽器緩存,Session的代碼

ASP.NET網站管理系統退出 清除瀏覽器緩存,Session的代碼

2019-10-04 20:10asp.net代碼網 ASP.NET教程

管理系統退出登陸后,將網址重新輸入后還會看到用戶登陸后的界面,為了解決這個問題,我采用了以下方法,需要的朋友可以參考下

1、在系統登陸成功時記錄登陸的用戶名、密碼等信息(登陸功能的部分代碼) 

復制代碼代碼如下:


Session["id"] = user.id.ToString(); 
Session["name"] = user.name.ToString(); 
Session["pwd"] = user.password.ToString(); 
Session["time"] = user.LoginTime.ToString(); 
Session["authority"] = user.limits.ToString(); 


2、在管理系統的每個頁面中加入以下代碼,在頁面加載時判斷session的值是否為空 

復制代碼代碼如下:


protected void Page_Load(object sender, EventArgs e) 

if (Session["id"] == null || Session["name"] == null || Session["time"] == null || Session["authority"] == null || Session["pwd"] == null) 
Response.Redirect("~/Login.aspx", true); 
if (!IsPostBack) 

。。。。。。 


3、在點擊“退出系統”執行的事件中加入session清空的代碼和瀏覽器緩存清空的代碼 

復制代碼代碼如下:


public void Clear(object sender, EventArgs e) 

Session["id"] = null; 
Session["name"] = null; 
ClearClientPageCache(); 
Response.Redirect("~/Login.aspx"); 

public void ClearClientPageCache() 

//清除瀏覽器緩存 
  Response.Buffer = true; 
Response.ExpiresAbsolute = DateTime.Now.AddDays(-1); 
Response.Cache.SetExpires(DateTime.Now.AddDays(-1)); 
Response.Expires = 0; 
Response.CacheControl = "no-cache"; 
Response.Cache.SetNoStore(); 


由于我的“退出系統”時用HTML的<a>標簽寫在母版頁中的,因此上面的代碼是寫在母版頁的.cs文件中的。 
母版頁代碼: 

復制代碼代碼如下:


<a class="atop" target="_self" <SPAN style="BACKGROUND-COLOR: #ff0000">runat="server" onserverclick</SPAN> ="Clear" >退出系統</a> 


================================================================================================ 
之前的版本一直不能實現功能,糾結了很久,沒有找出問題所在,把剛開始執行錯誤的代碼貼出來,同時也我把自己的認為錯誤的地方貼出來,希望大家批評指正。 
這個版本的錯誤是:登陸成功后進入主頁面,然后再點擊進入其他頁面時都無法進入,都會跳到登陸界面。 
我的思考: 
      1、我在跟蹤調試時發現,每次頁面加載時都會自動執行母版頁.cs文件中的Clear()方法,因此不能通過其他頁面Page_Load()方法中 的 if (Session["id"] == null || Session["name"] == null || Session["time"] == null || Session["authority"] == null || Session["pwd"] == null) Response.Redirect("~/Login.aspx", true); 
      2、我的疑問在于,Clear()方法明明是點擊后才執行的,為什么每次加載頁面的時候都自動執行? 
      3、我考慮錯誤的原因是客戶端和服務器端執行方法的不同,然后在網上找了關于onclick,和onserverclick的區別,但是對他們的理解還不是很清楚。希望大家能夠交流一下。 

剛開始前臺代碼用的是(母版頁前臺代碼): 

復制代碼代碼如下:


<a href="~/Login.aspx" class="atop" target="_self" onclick=“clear()”>賬戶信息</a> 
<script> 
  function clear()<BR>  {<BR>    <%Clear();%><BR>  } 
</script> 


母版頁后臺代碼 

復制代碼代碼如下:


public void Clear() 

Session["id"] = null; 
Session["name"] = null; 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 色综合天天综合网看在线影院 | 亚洲va久久久久综合 | 久草草在线视视频 | 国产 日韩 欧美视频二区 | 高清色黄毛片一级毛片 | 欧美日韩视频在线一区二区 | 菠萝视频在线完整版 | 国产成人无精品久久久 | 久久re视频精品538在线 | 精品国语对白精品自拍视 | 99久久精品免费看国产一区二区 | 香港日本三级亚洲三级 | 高清在线免费 | 国产一区在线免费观看 | 国产专区视频在线观看 | 故意短裙公车被强好爽在线播放 | 精品国产区一区二区三区在线观看 | 91精品免费国产高清在线 | 视频在线观看大片 | 欧美在线欧美 | 华人亚洲欧美精品国产 | 欧美在线看片a免费观看 | 黑人粗长大战亚洲女 | 色综合网亚洲精品久久 | 国产裸露片段精华合集链接 | 精品亚洲综合在线第一区 | 欧美一级高清片免费一级 | 男人的天堂comwww | 午夜伦伦电影理论片费看 | 日韩精品亚洲专区在线影视 | 1024人成网站色| 波多野结衣无码 | 国产一成人精品福利网站 | 天天干天天日天天射天天操毛片 | 丝瓜视频黄瓜视频 | 国产一级在线观看视频 | 欧美人伦禁忌.5 | 欧美一区二区三区久久久 | 国产精品视频在线观看 | 99在线免费观看视频 | 全黄一级裸片视频免费 |