C# 在每个页面上执行注销

C# 在每个页面上执行注销,c#,asp.net-mvc,web,logout,C#,Asp.net Mvc,Web,Logout,我想在我的网页的每个视图上实现注销选项。为此,我将null分配给我的会话变量。并删除缓存中的数据。但我研究了从缓存中删除数据会给web服务器带来额外的负担,因为缓存中没有存储任何数据。。。 那么,什么可以替代这个问题呢 创建一个\u布局页面,并保持登录/注册/注销状态。您可以通过创建默认的Web MVC应用程序进行检查,并查看如何在每个页面中呈现登录/注册/注销 使用java脚本清理缓存的方法有很多。 我喜欢这样 <script> function ClearHistory()

我想在我的网页的每个视图上实现注销选项。为此,我将null分配给我的会话变量。并删除缓存中的数据。但我研究了从缓存中删除数据会给web服务器带来额外的负担,因为缓存中没有存储任何数据。。。
那么,什么可以替代这个问题呢

创建一个\u布局页面,并保持登录/注册/注销状态。您可以通过创建默认的Web MVC应用程序进行检查,并查看如何在每个页面中呈现登录/注册/注销

使用java脚本清理缓存的方法有很多。 我喜欢这样

<script>
 function ClearHistory()
  {
    var backlen = history.length;
    history.go(-backlen);
    window.location.href = loggedOutPageUrl //Pass your Index Page
  }
</script>

请检查此项有许多方法可以清除缓存,以便后退按钮在注销后不起作用。

您希望在每个页面中提供一个注销按钮,或者用户在到达每个页面后将自动注销??要实现注销,您可以使用母版页。单击注销后,您将清除会话并重定向到登录页面我想在每个页面@BasantaMatiayou完全正确@Vignesh,但问题是数据存储在缓存中,我不想要这个。为什么您要使用缓存,您不能单独借助会话吗
{
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetExpires(DateTime.UtcNow.AddHours(-1));
Response.Cache.SetNoStore();
AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie);
return RedirectToAction("Login");
}