2009-03-23 3 views
1

웹 서비스를 호출하고 응답을 처리하는 프로세스가 있습니다. 일부 응답에는 일부 사용자 입력이 필요하므로 처리 할 수 ​​있습니다. 사용자 입력이 필요한 경우 이벤트 처리기에서 이벤트 처리기에서 양식을 페이지에 표시하고 사용자 입력이 게시 될 때까지 대기 한 다음 이벤트 처리기에서 사용자 입력을 호출 메서드에 반환 할 때까지 기다리고 싶습니다.사용자 입력 대기

이벤트 처리기가 입력을 반환하기 전에 게시물을 대기하는 데 어려움을 겪고 있습니다. 가능한지 알지 못합니다.

답변

0

정확하게 이해한다면, 여기에있는 문제는 매우 간단한 이벤트 기반 시스템을 사용하여 문제를 해결하려고한다는 것입니다. 당신이해야 할 일은 그러한 작업을위한 자신 만의 (매우 간단한) 워크 플로우 시스템을 만들고 UI 처리에서 백엔드 로직을 분리하는 것입니다 (ASP.NET MVC 프레임 워크는 이것에 이상적입니다. 그럼에도 불구하고 큰 문제는 아닙니다.) 이제이 "워크 플로"가 반드시 복잡 할 필요는 없습니다. 응용 프로그램에서 수행 한 작업을 일종의 흐름 다이어그램으로 세분화하여 시작하십시오. 꽤 간단한 의존성을 볼 수 있다면 기본적인 상태 머신을 구현하는 문제 일 수 있습니다. 웹 응용 프로그램 (모든 종류 : 응용 프로그램, 세션,보기)의 상태를 처리하는 일반적인 포인터로 this page에있는 링크 중 일부를 읽으십시오. 나는 당신이 묘사 한 것에서 더 구체적 인 것을 당신에게 정말로 제공 할 수는 없다 (아마 나는 명백한 것을 놓치고있다). 웹 사이트/웹 응용 프로그램에서 수행해야하는 작업을 명확히하려면 몇 가지 코드 예제를 제공 할 수 있지만이 문제를 분석적으로/흐름 관점에서 처리하는 것이 좋은 해결책이 될 것이라고 생각합니다. .

0

저는 개인적으로 워크 플로우를 파악하고 입력을 요청할시기를 결정할 때 사용하는 Noldorin의 제안을 선호합니다. 서버 이벤트는 사용자가 요청할 때 발생하지 않는 한 클라이언트 쪽 렌더링과 관련해서는 아무 것도하지 않습니다.이 경우 이미 워크 플로가 있고 이벤트가 필요 없습니다.

클라이언트 컴퓨터를 서버와 통신 상태로 유지하면이 문제를 해결할 수 있습니다. 예를 들어 <asp:Timer> 컨트롤의 Tick 이벤트에서 새 이벤트를 확인하십시오. 예를 들어, 서버가 사용자 요청을 처리 한 XX %라는 업데이트 패널 또는 뭔가를 가지고 있고 처리가 완료되면 사용자 입력을 요구하는 것이 목표 인 경우이 솔루션이 실용적입니다.