다음을 통해 공유


Ordering State Machine 샘플

Download sample

Ordering State Machine 샘플은 상태 시스템 워크플로를 사용하여 주문 수행 솔루션을 구현하는 응용 프로그램입니다.

이런 종류의 응용 프로그램에서는 주문이 완료되기까지 여러 상태를 거칠 수 있습니다. 이 샘플에서는 네 개의 상태가 정의됩니다.

  • WaitingForOrderState

  • OrderOpenState

  • OrderProcessedState

  • OrderCompletedState

이 주문 시스템에서는 주문의 현재 상태에 따라 주문에 어떤 이벤트가 발생할 수 있는지 지정하는 규칙도 있습니다. 예를 들어 열려 있는 상태의 주문은 업데이트, 처리, 취소 또는 배송할 수 있습니다. 하지만 처리된 주문은 업데이트나 배송만 가능하며 취소할 수는 없습니다. 이벤트가 발생하면 상태 시스템 워크플로는 선택적으로 주문을 새 상태로 전환할 수 있습니다. 예를 들어 주문이 열려 있는 상태에서 OrderShipped 이벤트가 발생하면 상태 시스템 워크플로는 이 주문을 완료됨 상태로 전환합니다.

이 샘플을 빌드하려면

  1. 이 항목에서 샘플 다운로드를 클릭하여 샘플을 다운로드합니다.

    이렇게 하면 샘플 프로젝트가 로컬 하드 디스크에 추출됩니다.

  2. 시작을 클릭하고 프로그램, Microsoft Windows SDK를 차례로 가리킨 다음 CMD 셸을 클릭합니다.

  3. 샘플의 소스 디렉터리로 이동합니다.

  4. 명령 프롬프트에서 **MSBUILD <Solution file name>**을 입력합니다.

이 샘플을 실행하려면

  1. SDK 명령 프롬프트 창에서 샘플의 주 폴더 아래에 있는 OrderApplication\bin\debug 폴더 또는 OrderApplication\bin 폴더(VB 버전의 샘플의 경우)의 .exe 파일을 실행합니다.

  2. OrderId 필드에 값을 입력한 다음 Order Created를 클릭하여 워크플로의 새 인스턴스를 만들고 OrderCreated 이벤트를 발생시킵니다.

    이 프로세스를 반복하여 주문 상태 시스템 워크플로의 인스턴스를 여러 개 만들 수 있습니다.

  3. 주문을 작성할 때 각 레코드의 Order State 값이 WaitingForOrderState에서 OrderOpenState로 신속하게 바뀌는 것을 보게 됩니다.

  4. 레코드를 선택하면 Order UpdatedOrder Processed 단추만 활성화됩니다.

  5. Order Processed를 클릭하면 워크플로에 OrderProcessed 이벤트가 발생합니다.

  6. 몇 초 후에 Order State가 OrderProcessedState로 바뀌며, 레코드를 선택하면 Order Updated, Order CanceledOrder Shipped 단추만 활성화됩니다.

참고 항목

기타 리소스

Tutorial: Create a State Machine Workflow
State Machine Workflows
Windows Workflow Foundation 샘플

Footer image

Copyright © 2007 by Microsoft Corporation. All rights reserved.