2010-12-08 55 views
0

我有我的aspx页面上的计时器作为ASP:定时器线程

<asp:Timer ID="timUpdate" runat="server" Enabled="false" Interval="5000" OnTick="timUpdate_Tick"/> 

,我跑在页面上不同的线程数在文档中的单词数。每个线程为一个单独的页面。

在页面加载我开始我的计时器。它工作正常的第一跳和触发事件

protected void timUpdate_Tick(object sender, EventArgs e) 
{ 
    if(db.value()==true) 
     Response.Redirect("abc.aspx"); 
    } 

我已经检查了调试过程中它工作正常,但我的计时器启动后,间隔是相同的,但它不火的event.what可以是可能的问题

回答

0

您在aspx中设置了Enable = false,所以我认为您在代码中启用它。如果您已禁用viewstate,则在回发之后,该属性可能未被保留。

您可以通过重新启用Enabled财产在你的方法验证这一点:

protected void timUpdate_Tick(object sender, EventArgs e) 
{ 
    timUpdate.Enabled= true; 
    if (db.value()==true) 
     Response.Redirect("abc.aspx"); 
} 

这不是一个很好的解决方案,但它可能工作。您应该或者允许持久化控件状态,或者对每个页面请求启用计时器(如果满足所需条件)。