我的aspx页面上有一个计时器
<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");
}
我已经检查过,在调试过程中它工作正常,但在我的计时器启用后,间隔相同,但它不会触发事件。可能是什么问题
答案 0 :(得分: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");
}
这不是一个很好的解决方案,但可能会有效。您可能应该允许持久化控件状态,或者自己在每个页面请求上启用计时器(如果满足所需条件)。