【问题标题】:asp.net timer to load page contentasp.net 计时器加载页面内容
【发布时间】:2009-12-02 21:19:46
【问题描述】:

asp.net
c#

我们的网页当前包含一个相当大的网络应用程序,在尝试导航到该应用程序时会导致长时间的延迟。我目前正在实施 WCF Web 服务以利用 ajax,但延迟是我的雇主担心的问题,因此他希望同时快速而肮脏地修复。

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

任何帮助将不胜感激

肖恩

【问题讨论】:

  • 您是否研究过其他技术,例如 GZipping 响应、使用 JS 最小化等?

标签: c# asp.net timer


【解决方案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();                            
}

【讨论】:

    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 2013-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-21
      • 1970-01-01
      • 2014-07-21
      相关资源
      最近更新 更多