기본 아이디어는 웹 사이트와 워크 플로가 있다는 것입니다. 내 작업 흐름에서 aspx 페이지의 버튼 클릭을 캡처해야합니다.asp.net 사이트의 워크 플로에 대한 webform 이벤트 캡처
나는 worflow 프로젝트와 웹 사이트 프로젝트가있는 솔루션을 가지고 있으며, web.config와 global.asax는 WF와 함께 작동하도록 설정되어 있습니다. 지속성 서비스도 설정됩니다.
StateMachine 워크 플로우를 만들었습니다. EventDrivenActivity 인스턴스를 포함하는 여러 상태 (StateActivity)가 있으며 그 안에는 HandleExternalEventActivity 인스턴스가 있습니다. 후자를 올바르게 설정하여 응용 프로그램을 컴파일 할 수 있도록 ExternalDataExchange 특성으로 장식 된 인터페이스를 만들고 필요한 이벤트를 노출했습니다. 그런 다음이 인터페이스를 구현 한 클래스를 만들었습니다.
그게 내가 가진 것입니다. 이제 클래스를 aspx 페이지에 연결해야합니다. 페이지의 이벤트는 클래스의 이벤트를 트리거해야합니다. 버튼이 있으며, form.aspx.vb 페이지에서 해당 이벤트 핸들러가 내 form.aspx 나이에
<ExternalDataExchange()> _
Public Interface ICatWorkflow
Property RequestId() As Guid
...
Sub requestInfoEmail()
...
Event onReception(ByVal sender As Object, ByVal e As ExternalDataEventArgs)
End Interface
Class MyObject
Implements ICatWorkflow
Public Property RequestId() As Guid Implements ICatWorkflow.RequestId
...
End Property
Public Sub requestInfoEmail() Implements ICatWorkflow.onReception
...
End Sub
Event onReception(ByVal sender As Object, ByVal e As ExternalDataEventArgs)
end class
:
Protected Sub btnReception_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Handles btnReception.Click
...
End Sub
내 코드는 다음과 같이 보입니다
여기서부터 어디로 가야할까요?