什麼是期間在asp.net一個漫長的過程將消息發送到用戶的最佳方式。在其他語言有一個刷新方法,我看到,asp.net也有,但這是最好的方式?如果不是,你還能怎麼做?asp.net輸出信息到用戶的長期運行的任務
回答
做到這一點的最好辦法是產卵一個單獨的線程執行長時間運行的進程,然後有一個從長期運行的線程請求的狀態,並顯示適當的狀態在主線程中調用Ajax。
,說明這一點在深入比較好的文章可以在這裏找到:http://www.devarchive.net/displaying_progress_bar_for_long_running_processes.aspx
在WAWS,使用Azure的WebJobs,這是更簡單,更可靠。工作者角色更加健壯。 – RickAndMSFT
要麼使用推送通知架構(彗星)http://pokein.codeplex.com/或您的狀態保存到數據庫和網頁或者刷新,以獲取狀態或使用jQuery.ajax()來取回數據或刷新UpdatePanel上的定時器,例如:http://msdn.microsoft.com/en-us/library/cc295400.aspx
無論哪種方式 - 您的'進度'需要保存到當前會話或數據庫讀。 UI通常不會直接與處理線程交互,但都會與包含更新狀態的某個中間媒體交談。
正如亞當Tuliper說 - 你需要一個推送通知的框架,而最好的選擇是SignalR從微軟。無需在任何地方存儲狀態,或實施輪詢。 SignalR會將所需的所有內容都推送回瀏覽器,而啓動進程的請求(在不同的線程上)通過HubContext類將其消息直接發送到客戶端。詳情可以在here找到。
- 1. 任務長期運行的副作用?
- 2. asp.net任意用戶信息
- 3. asp.net長時間運行的任務
- 4. 長期運行的後臺任務
- 5. ASYNCIO對長期運行的任務
- 6. 如何讓用戶退出長時間運行的VBA任務?
- 7. Asp.Net核心長時間運行任務
- 8. 通過ASP.NET調用的長時間運行任務的模式
- 9. ASP.NET中處理長時間運行任務的單獨服務
- 10. 定期輸出到長時間運行的瀏覽器
- 11. 長期運行任務的Azure服務結構演員
- 12. asp.net長時間運行的任務和檢查它的狀態
- 13. 從intellij的jetty運行項目,並將運行時信息輸出到文件
- 14. 在顯示「活動」時讓CruiseControl.NET使用長時間運行任務的輸出
- 15. 取消長時間運行的任務Asp.net
- 16. 如何在asp.net中實現長時間運行的任務
- 17. 長時間運行的任務 - 最佳實踐 - ASP.NET 4.0,C#
- 18. ASP.NET長時間運行的任務想法
- 19. 如何從ASP.NET頁面運行冗長的任務?
- 20. 後臺長時間運行的任務
- 21. Rails中的長時間運行任務
- 22. WebAPI中的長時間運行任務
- 23. ios7中的長時間運行任務
- 24. 處理長時間運行的任務
- 25. 一個長時間運行的任務
- 26. 如何與輸出的用戶信息加入到表
- 27. 從ASP.NET的Windows計劃任務獲取任務的上次運行日期
- 28. 定期長時間運行的後臺任務
- 29. 定時器與長期運行的任務
- 30. 當調用onDestroy()時運行長任務
不過,雖然在asp.net使用線程,我們不能在功能使用基於會話信息,從線程調用。 – 2013-05-15 14:20:57