禁用asp.net页面的缓存不起作用

时间:2014-07-09 08:46:47

标签: c# asp.net caching

我有一个页面(Eventslist.aspx),我已经实现了过滤asp.net转发器的记录,  当我在点击链接按钮(linkFilter)后过滤记录时,我将它们绑定到同一个转发器,

     <table>
       <tr>
         <td>
               <a class="EventAnchor" href='<%# Eval("EventId","FullDetails.aspx?Event={0}") %>'>
           <%# Eval("EventName")%>
              </a>

      </td>
      </tr>
     </table>

所以在这里当我点击特定记录的Anchor标签时,我将重定向到fulldetails.aspx,在那里我将显示完整的详细信息。

我的问题是,如果我点击后退按钮过滤了记录,页面就会过期。所以我决定将缓存设置为false。这样每次都可以从服务器回放页面。

我在Eventslist.aspx页面中尝试加载:

       Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);
       Response.Cache.SetNoStore();

     Response.ExpiresAbsolute=DateTime.Now.AddDays(-1d);
     Response.Expires =-1500;
     Response.CacheControl = "no-cache";

     <meta http-equiv="Cache-Control" content="no-store" />

他们都没有工作......每次我获得缓存页面,最终显示 - &gt;  &#34; DOCEMENT EXPIRED&#34;

更新

  <system.web>
        <compilation debug="true" targetFramework="4.0">
            <assemblies>
                <add assembly="System.IO.Log, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
                <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
                <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
                <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/></assemblies></compilation>
    <httpRuntime maxRequestLength="4096" requestValidationMode="2.0" maxUrlLength="10999" maxQueryStringLength="2097151" ></httpRuntime>
        <pages validateRequest="false">
        </pages>
        <authentication mode="Forms">
            <forms defaultUrl="~/Admin/AddEvent.aspx" loginUrl="~/Log.aspx" slidingExpiration="true" timeout="2880">
            </forms>
        </authentication>
        <authorization>
            <deny users="?"/>
        </authorization>
    </system.web>

0 个答案:

没有答案