asp.net计时器加载页面内容

时间:2009-12-02 13:03:40

标签: c# asp.net timer

asp.net
C#

我们的网页目前包含一个相当大的网络应用,在尝试导航到它时会导致长时间的延迟。我目前正在实施一个使用ajax的WCF网络服务,但延迟是我的雇主所关心的,因此他希望同时进行快速而肮脏的修复。

我想加载空页面,然后使用计时器加载内容。这将减少感知的页面加载时间,但我不确定如何完成它。

非常感谢任何帮助

肖恩

2 个答案:

答案 0 :(得分:1)

一些代码可以帮助您入门:

在asp.net页面中:

<asp:Timer ID="Timer1" OnTick="Timer1_Tick" runat="server" Interval="1">
</asp:Timer>
<asp:UpdatePanel ID="updatePanel1" runat="server" UpdateMode="Conditional">
  <Triggers>
    <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
  </Triggers>
  <ContentTemplate>
    .... your stuff here
  </ContentTemplate>
</asp:UpdatePanel>
<asp:UpdateProgress ID="UpdateProgress1" runat="server" DisplayAfter="100">
  <ProgressTemplate>
    Please wait...
  </ProgressTemplate>
</asp:UpdateProgress>

在背后的代码中:

protected void Timer1_Tick(object sender, EventArgs e)
{
  this.Timer1.Enabled = false;
  StartLongRunningTask();                            
}

答案 1 :(得分:0)

您可以使用Response来刷新Response.Flush(),而不是计时器。