如何结束用户会话并确保用户已注销?

我是.aspx的新手,现在事情是因为我正在做一个支持Web的项目,我从用户那里登录。 我拖放了登录模板,然后使用了

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

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

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

我用过这个

Session["Authenticate"] = null

在登录页面的页面加载时,只有在登录按钮单击时,用户才能再次输入

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

然后我在数据页的每个页面加载时使用了一个检查

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

这并没有解决我的问题,请任何人都可以给出提示或链接或提示,以改善我的注销方式? 我在没有任何.net或aspx知识的情况下讨论了这个项目,我仍在学习所有内容,请提前向我表示怀疑。

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