2010-07-29 107 views
4

我是.aspx的新手,现在事情是因为我正在做一个web启用的项目,我有这个用户登录。我拖累下跌登录模板,然后使用如何结束用户会话并确保用户已注销?

Session["Authentication"] = username.Tostring();

存储当前登录用户的信息等。现在我甚至在右上角使用超链接“注销”,然后将其转到登录页面。 (如果这是错误的转移方式请让我知道,我是通过互联网学习)..

现在如果在运行网络,我可以轻松登录,但是当我通过超级链接“注销”注销它会再次带我到登录页面,但是如果我按下浏览器的后退按钮,它会再次将控件传输到数据页面,我可以再次执行数据操作。

我在登录页面的页面加载使用此

Session["Authenticate"] = null

只让登录按钮点击,用户可以通过

Session["Authenticate"] = username.Tostring();

然后我用再次进入检查数据页的每页加载情况

if(Session[Authentiacte"] == null) 
    Server.Tranfer("LoginPage.aspx"); 

这没有解决我的问题, 请任何人都可以提供一个提示或链接或提示,以改善我的注销方式? 我strated这个项目没有.NET或ASPX的任何知识,我还提前学习的一切,请把我的疑虑 thankx ..

回答

7
HttpContext.Current.Session.Clear(); 
HttpContext.Current.Session.Abandon(); 
HttpContext.Current.User = null; 
System.Web.Security.FormsAuthentication.SignOut(); // if forms auth is used 
+0

应该在哪里使用?我的意思是在登录页面?因为我的注销是一个超链接 – 2010-07-29 06:18:56

+0

@Nagaraj:创建一个'Logout.aspx'(你的链接应该引导)并将这些调用添加到'Page_Load(object,EventArgs)'或'OnLoad()' – abatishchev 2010-07-29 07:06:05

相关问题