Internet explorer Loads pages from cache issue resolution in asp.net

Internet explorer have tendency to load pages from cache for same requested URL. Which makes thing worse where the content of the web page updated frequently. In this situation Internet Explorer not send request to the server for page rendering. To resolve the issue in asp.net there are two option available. Write the HTML code in head tag or write server side code to tell Internet explorer to not to load pages from cache.

If you are trying to add code in design or HTML page then add following code

<HTML><HEAD>
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
</HEAD><BODY>
</BODY>
</HTML>  

In Asp.NET, you can do it on a page-by-page granularity by using this set of methods prior to calling the web page by following way.


HttpContext.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1));
HttpContext.Response.Cache.SetValidUntilExpires(false);
HttpContext.Response.Cache.SetRevalidation(System.Web.HttpCacheRevalidation.AllCaches);
HttpContext.Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);
HttpContext.Response.Cache.SetNoStore();

The above code also works well in Asp.Net MVC 3.0

Happy Coding !!! :)

Comments