ASP页面显示旧请求

Jai*_*cia 1 vb.net asp.net iis

我有一个ASP.net页面,其中包含用于过滤数据集的字段.当我应用过滤器(通过按钮)时,结果加载正常.如果我导航到另一个页面(在同一个会话中),然后返回到该页面,我将在页面加载时重新设置过滤器字段的值.

有时,字段会重置正常,有时它们会变回空白.似乎没有任何真正的模式,他们什么时候回来好,当他们回来空白.是否有可能服务器正在缓存请求/响应?(IIS),如果没有,那么可能是什么问题?

kgi*_*kis 7

我同意其他人的意见,这是一个缓存问题.如果您没有发送相应的标题,则浏览器将缓存您的页面.例如,如果您使用浏览器的"后退"按钮返回到您的页面,那么这将由缓存加载而不是从服务器加载.

为了验证这个位置在Page_Load方法中的断点并等待它被击中.要禁用缓存,您需要执行以下操作:

Response.Buffer = true;
Response.ExpiresAbsolute = DateTime.Now.Add(new TimeSpan(-1,0,0));
Response.Expires = 0;
Response.CacheControl = "no-cache";
Run Code Online (Sandbox Code Playgroud)