영어로 읽기

다음을 통해 공유


GetWorkflowEvent

현재 워크플로 이벤트의 이름을 스택에 밀어넣습니다.

구문


<wf:Operation Name="GetWorkflowEvent" />

매개 변수

없음

밀어넣는 값

현재 워크플로 이벤트를 포함하는 문자열입니다.

설명

워크플로 인스턴스는 실행되는 동안 여러 상태를 통과할 수 있습니다. 예를 들어 워크플로 인스턴스는 유휴 상태가 되거나 일시 중단될 수 있습니다. 워크플로 인스턴스는 상태가 변경될 때마다 워크플로 상태 이벤트를 런타임 추적 인프라에 내보냅니다. Windows Workflow Foundation BAM 인터셉터는 System.Workflow.Runtime.Tracking.TrackingWorkflowEvent 열거에서 정의된 이벤트를 대부분 지원합니다(아래 표 참조).

활동 이벤트 Description
변경됨 워크플로 인스턴스에서 워크플로가 변경되었습니다.
완료됨 워크플로 인스턴스가 완료되었습니다.
생성일 워크플로 인스턴스가 생성되었습니다.
예외 처리되지 않은 예외가 발생했습니다.
유휴 상태 워크플로 인스턴스가 유휴 상태입니다.
로드됨 워크플로 인스턴스가 메모리에 로드되었습니다.
지속됨 워크플로 인스턴스가 지속되었습니다.
다시 시작됨 이전에 일시 중단된 워크플로 인스턴스의 실행이 다시 시작되었습니다.
시작됨 워크플로 인스턴스가 시작되었습니다.
일시 중단 워크플로 인스턴스가 일시 중단되었습니다.
종료됨 워크플로 인스턴스가 종료되었습니다.
언로드됨 워크플로 인스턴스가 메모리에서 언로드되었습니다.

참고

동일한 OnEvent 요소에 GetWorkflowEventGetActivityEvent를 모두 사용할 수는 없습니다.

예제

다음 샘플에는 워크플로에서 특정 활동("FoodAndDrinksPolicy")을 찾도록 구성된 필터가 포함되어 있습니다. 이 샘플의 필터는 닫힌 워크플로에서 "FoodAndDrinksPolicy"라는 활동을 찾도록 구성되어 있습니다. 이 작업을 위해 GetWorkflowEvent에서 반환된 값을 "Created" 상수와 비교합니다.

<ic:Filter>
  <ic:Expression>
    <wf:Operation Name="GetWorkflowEvent" />
      <ic:Operation Name="Constant">
        <ic:Argument>Created</ic:Argument>
      </ic:Operation>
    <ic:Operation Name="Equals" />
  </ic:Expression>
</ic:Filter>

이 작업은 워크플로의 수명을 추적하고 워크플로의 예외나 기타 문제를 검색하는 데 유용합니다.

참고 항목

System.Workflow.Runtime.Tracking.TrackingWorkflowEvent 열거