<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ OutputCache Duration="10" Location="Server" VaryByParam="none" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<h2>
Welcome to ASP.NET!
</h2>
<p>
To learn more about ASP.NET visit <a href="http://www.asp.net" title="ASP.NET Website">
www.asp.net</a>.
</p>
<p>
This is cached date text
<asp:Label ID="lblDate" runat="server"></asp:Label>
</p>
<p>
This is uncached date text
<asp:Label ID="lblDate1" EnableViewState="false" runat="server"></asp:Label>
</p>
<p>
You can also find <a href="http://go.microsoft.com/fwlink/?LinkID=152368&clcid=0x409"
title="MSDN ASP.NET Docs">documentation on ASP.NET at MSDN</a>.
</p>
</asp:Content>
在上面的代码中,我希望每当我刷新页面时,只有lblDate1值会发生变化。我怎样才能实现这一点。目前两个控制值都是正确的。
答案 0 :(得分:0)
由于页面已缓存,因此整个页面都会被缓存,并且在缓存无效之前,将再次从服务器中检索此调用中的任何内容。
您可以通过在文档加载上使用javascript执行ajax调用来解决此问题,该调用从REST服务获取更新的值(或者通过从aspx页面返回json格式化的字符串来模拟服务),然后更新日期值的JavaScript。