簡體   English   中英

等待用戶輸入

[英]Wait for user input

我有一個調用 web 服務並處理響應的進程,一些響應需要一些用戶輸入,以便可以處理它們。 當需要用戶輸入時,我想觸發一個事件,在事件處理程序中我想向頁面顯示一個表單,然后等到用戶輸入被發回,然后讓事件處理程序將用戶輸入返回給調用方法。

我很難讓事件處理程序在返回輸入之前等待回帖,我什至不知道它是否可能。

就個人而言,我更喜歡 Noldorin 的建議,即找出工作流程並使用它來確定何時請求輸入。 請記住,就客戶端渲染而言,服務器事件不會做任何事情,除非它們發生在用戶發出請求時......在這種情況下,您已經有了工作流程並且不需要事件。

您可以通過使客戶端計算機與服務器保持通信來解決此問題。 例如,檢查<asp:Timer>控件的 Tick 事件中的新事件。 如果您的目標是,例如,有一個更新面板或表明服務器已完成 XX% 的用戶請求處理,並在處理完成后要求用戶輸入,則此解決方案是實用的。

如果我理解正確,我認為這里的問題是您正在嘗試使用非常簡單的基於事件的系統來解決問題。 您需要做的是為此類任務創建自己的(非常簡單的)工作流系統,並嘗試將一些后端邏輯從 UI 處理中分離出來(不過,ASP.NET MVC 框架將是理想的選擇)我看到您正在使用 WebForms,但這並不是什么大問題)。 現在這個“工作流程”並不一定需要很復雜。 首先將應用程序執行的操作分解為某種流程圖。 如果您可以看到非常簡單的依賴關系,那么它可能只是實現一個基本的 state 機器的問題。 作為在 web 應用程序(各種:應用程序,session,查看)中處理狀態的一般指針,請閱讀此頁面上的一些鏈接。 恐怕我無法真正為您提供您所描述的更具體的內容(但也許我遺漏了一些明顯的東西)。 如果您想澄清您的網站/網絡應用程序需要執行的任務,那么我可能會提供一些代碼示例,但我懷疑僅從分析的角度/從流程的角度處理這個問題應該會給您一個很好的解決方案.

暫無
暫無

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

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