Visual Studio 2010에서 만든 ASP.NET 프로젝트가 있습니다. 프로젝트를 시작하기 위해 일반적인 "MY ASP.NET APPLICATION"페이지가 있습니다. 이후 일반 콘텐츠를 모두 제거하고 사용자의 요구에 따라 응용 프로그램을 작성했습니다.Asp.Net 브라우저에서 뒤로 버튼을 클릭하면 Page_Load가 적용됩니다.
내 default.aspx 페이지에서 이 UpdatePanel
으로 묶여 있습니다. 사용자가 datagrid
에서 행을 선택하면 새 페이지로 이동합니다. 모든 것이 정상적으로 작동하지만 사용자가 브라우저에서 뒤로 버튼을 클릭하면 일반 "MY ASP.NET APPLICATION"페이지가 다시 표시되므로 이전 캐시 된 버전에서 페이지를로드하는 것처럼 동작합니다.
나는 이것을 잠시 조사한 결과, Response
에 캐시를 사용하지 말라고 말하면 사용자가 뒤로 버튼을 클릭하면 Page_Load
이 누적됩니다. 그러나,이 일을 나를 위해 작동하지 않습니다. 새로 고침 버튼을 클릭하거나 F5를 입력하면 내 페이지가 성공적으로 다시로드됩니다. 내가 여기에 IE9를 사용하고하는 것은 내 마스터 페이지의 Page_Load
에서 시도한 것입니다 : 또한
Response.Cache.SetExpires(DateTime.Now.AddDays(-1));
Response.Cache.SetValidUntilExpires(false);
Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetNoStore();
Response.Expires = -1441;
Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
Response.AppendHeader("pragma", "no-cache");
Response.CacheControl = "No-cache";
Response.AddHeader("cache-control", "no-store, no-cache, must-revalidate");
, 나는 마스터 페이지의 스크립트에서이 삽입 시도 :
<meta http-equiv="Expires" content="0"/>
<meta http-equiv="Cache-Control" content="no-cache"/>
<meta http-equiv="Pragma" content="no-cache"/>
아마도 문서의 시작 부분에 도움이 될까요? http://stackoverflow.com/a/11341116/109749 – jcolebrand