2010-12-08 33 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"); 
} 

這不是一個很好的解決方案,但它可能工作。您應該或者允許持久化控件狀態,或者對每個頁面請求啓用計時器(如果滿足所需條件)。