簡體   English   中英

中斷后立即在aspx頁面上觸發服務器端方法

[英]Fire a server side method on aspx page immediately after an interrupt


想象一下,我有一個aspx頁面,它是我網站的主頁,並且用戶花了很多時間在它上面。 現在我需要在發生之后,將此頁面更新。 例如,如果新用戶加入了網站,則所有用戶都會在其主頁上看到它。 我使用ajax計時器解決問題,並且每秒調用一種方法,如果我的站點已更改,則可以向用戶顯示該方法。 但這不是一個好的解決方案。 請告訴我如何在上述示例中斷后立即觸發方法。 (我認為當我們收到一些新電子郵件時,yahoo郵件也使用這種方式)

謝謝你的幫助。

您可以使當前線程“休眠”,直到出現新更改。 每個Web請求都對應一個線程。 並且您需要使用全局集合來跟蹤所有當前的睡眠線程。

var lastMsgTime=Global.NewMsgTime;  
while(true){     
     Thread.Sleep(300);  
     if(!Response.IsClientConnected||RequeGlobal.NewMsgTime!=lastMsgTime){
          lastMsgTime!=Global.NewMsgTime;
          break;  
     }  
}   

您仍然會在客戶端使用ajax。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM