StateMachineWorkflowActivity 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
주의
The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*
상태 시스템 워크플로에 대한 루트 컨테이너 역할을 합니다. 이벤트 구동 활동 및 상태를 포함합니다.
public ref class StateMachineWorkflowActivity : System::Workflow::Activities::StateActivity
[System.Drawing.ToolboxBitmap(typeof(System.Workflow.Activities.StateMachineWorkflowActivity), "Resources.StateMachineWorkflowActivity.png")]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.StateActivityValidator))]
public class StateMachineWorkflowActivity : System.Workflow.Activities.StateActivity
[System.Drawing.ToolboxBitmap(typeof(System.Workflow.Activities.StateMachineWorkflowActivity), "Resources.StateMachineWorkflowActivity.png")]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.StateActivityValidator))]
[System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")]
public class StateMachineWorkflowActivity : System.Workflow.Activities.StateActivity
[<System.Drawing.ToolboxBitmap(typeof(System.Workflow.Activities.StateMachineWorkflowActivity), "Resources.StateMachineWorkflowActivity.png")>]
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.StateActivityValidator))>]
type StateMachineWorkflowActivity = class
inherit StateActivity
[<System.Drawing.ToolboxBitmap(typeof(System.Workflow.Activities.StateMachineWorkflowActivity), "Resources.StateMachineWorkflowActivity.png")>]
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.StateActivityValidator))>]
[<System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")>]
type StateMachineWorkflowActivity = class
inherit StateActivity
Public Class StateMachineWorkflowActivity
Inherits StateActivity
- 상속
- 특성
예제
다음 코드 예제에서는 StateMachineWorkflowActivity 클래스의 새 인스턴스를 만들고 해당 인스턴스를 사용하여 세 가지 상태 사이에서 기본 상태 시스템 전환을 구현하는 방법을 보여 줍니다. 이 코드 예제는 StateMachineWorkflow.cs 파일에 있는 SimpleStateMachineWorkflow SDK 샘플의 일부입니다. 자세한 내용은 Simple State Machine을 참조하세요.
this.WhileLoop = new System.Workflow.Activities.WhileActivity();
this.Parallel = new System.Workflow.Activities.ParallelActivity();
this.Sequence1 = new System.Workflow.Activities.SequenceActivity();
this.Sequence2 = new System.Workflow.Activities.SequenceActivity();
this.ConsoleMessage1 = new System.Workflow.Activities.CodeActivity();
this.ConsoleMessage2 = new System.Workflow.Activities.CodeActivity();
//
// WhileLoop
//
this.WhileLoop.Activities.Add(this.Parallel);
codecondition1.Condition += new System.EventHandler<System.Workflow.Activities.ConditionalEventArgs>(this.WhileCondition);
this.WhileLoop.Condition = codecondition1;
this.WhileLoop.Name = "WhileLoop";
//
// Parallel
//
this.Parallel.Activities.Add(this.Sequence1);
this.Parallel.Activities.Add(this.Sequence2);
this.Parallel.Name = "Parallel";
Me.WhileLoop = New System.Workflow.Activities.WhileActivity()
Me.Parallel = New System.Workflow.Activities.ParallelActivity()
Me.Sequence1 = New System.Workflow.Activities.SequenceActivity()
Me.Sequence2 = New System.Workflow.Activities.SequenceActivity()
Me.ConsoleMessage1 = New System.Workflow.Activities.CodeActivity()
Me.ConsoleMessage2 = New System.Workflow.Activities.CodeActivity()
'
' WhileLoop
'
Me.WhileLoop.Activities.Add(Me.Parallel)
AddHandler codecondition1.Condition, AddressOf Me.WhileCondition
Me.WhileLoop.Condition = codecondition1
Me.WhileLoop.Name = "WhileLoop"
'
' Parallel
'
Me.Parallel.Activities.Add(Me.Sequence1)
Me.Parallel.Activities.Add(Me.Sequence2)
Me.Parallel.Name = "Parallel"
설명
참고
이 자료에서는 더 이상 사용되지 않는 형식과 네임스페이스에 대해 설명합니다. 자세한 내용은 Deprecated Types in Windows Workflow Foundation 4.5(Windows Workflow Foundation 4.5에서 사용되지 않는 형식)를 참조하세요.
StateMachineWorkflowActivity는 상태 시스템 모델을 따르는 워크플로를 만드는 데 사용되는 활동 컨테이너입니다.
StateMachineWorkflowActivity는 CompositeActivity입니다. 즉, StateMachineWorkflowActivity는 다른 활동을 포함할 수 있습니다. StateMachineWorkflowActivity 및 EventDrivenActivity 활동은 허용되는 유일한 StateMachineWorkflowActivity의 자식 활동입니다. 루트 활동 자체가 상태처럼 동작하므로 EventDrivenActivity 활동을 사용할 수 있습니다. 따라서 EventDrivenActivity의 모든 상태 활동에서 사용하는 루트 수준의 StateMachineWorkflowActivity 활동을 사용할 수 있습니다. 이 수준의 EventDrivenActivity 활동은 워크플로 이벤트를 처리하는 전역 메커니즘을 제공하며 상태 전환을 자동화합니다. StateActivity 활동은 모델의 다양한 단계를 정의하는 메커니즘을 제공합니다.
StateMachineWorkflowActivity에는 상태 시스템 워크플로를 실행하는 데 필요한 속성이 있습니다. 특히 StateMachineWorkflowActivity에는 중요한 두 개 속성인 InitialStateNameProperty와 CompletedStateNameProperty가 있습니다.
InitialStateNameProperty는 상태 시스템의 인스턴스가 만들어질 때 상태 시스템의 상태입니다. InitialStateNameProperty 속성은 필수이며, StateMachineWorkflowActivity가 만들어질 때 해당 속성을 제공해야 합니다. 상태 시스템의 InitialStateNameProperty은 상태 시스템 내에 포함된 다른 상태 활동과 비슷합니다. 상태 활동은 StateMachineWorkflowActivity 루트 활동의 직계 자식일 수 있고 StateMachineWorkflowActivity는 하나의 InitialStateNameProperty만 가질 수 있습니다.
CompletedStateNameProperty의 StateMachineWorkflowActivity는 StateActivity의 종료 상태로 지정된 StateMachineWorkflowActivity 활동입니다. CompletedStateNameProperty에 대해 전환을 수행하면 워크플로 실행이 완료됩니다. CompletedStateNameProperty은 필수가 아닙니다. 즉, 완료되지 않은 StateMachineWorkflowActivity가 있을 수 있지만 상태 시스템 워크플로가 메모리에서 항상 활성 상태라는 의미는 아닙니다. StateMachineWorkflowActivity는 이벤트를 대기할 때 언로드될 수 있습니다.
완료되지 않는 StateMachineWorkflowActivity 활동은 공급자를 통해 받은 구매 주문과 같은 장기 실행 비즈니스 트랜잭션을 처리하는 데 특히 유용합니다. 구매 주문이 수행되었다는 것이 구매 주문 프로세스가 끝났다는 의미는 아닙니다. 구매 주문에 포함된 상품이 반환되었거나 구매 주문 후에 구매 주문이 수정되고 항목이 추가되었을 수 있습니다. 법적 또는 다른 목적으로 일정 기간 동안 구매 주문 기록을 보관해야 하는 경우가 있을 수 있습니다. 워크플로가 종료되지 않았다는 것은 워크플로가 언로드된 상태에 있다는 것을 의미합니다. 워크플로를 더 이상 사용하지 않는 경우가 있을 수 있습니다. 즉, 지정한 시간이 지나면 워크플로 인스턴스가 강제로 종료될 수 있습니다.
생성자
StateMachineWorkflowActivity() |
사용되지 않음.
StateMachineWorkflowActivity 클래스의 새 인스턴스를 초기화합니다. |
StateMachineWorkflowActivity(String) |
사용되지 않음.
활동 이름을 사용하여 StateMachineWorkflowActivity 클래스의 새 인스턴스를 초기화합니다. |
필드
CompletedStateNameProperty |
사용되지 않음.
DependencyObject 속성을 대상으로 하는 CompletedStateName를 나타냅니다. |
InitialStateNameProperty |
사용되지 않음.
DependencyObject 속성을 대상으로 하는 InitialStateName를 나타냅니다. |
SetStateQueueName |
사용되지 않음.
WorkflowQueue의 상태를 변경하는 데 사용되는 StateMachineWorkflowActivity의 이름입니다. 이 필드는 상수입니다. |
StateChangeTrackingDataKey |
사용되지 않음.
변경 내용 추적 데이터 키 "StateActivity.StateChange"의 문자열 값을 보유합니다. 이 필드는 상수입니다. (다음에서 상속됨 StateActivity) |
속성
Activities |
사용되지 않음.
모든 자식 활동의 ActivityCollection 컬렉션을 나타내는 개체를 가져옵니다. (다음에서 상속됨 CompositeActivity) |
CanModifyActivities |
사용되지 않음.
Activities 내의 개별 활동을 수정할 수 있는지 여부를 제어하는 값을 가져오거나 설정합니다. (다음에서 상속됨 CompositeActivity) |
CompletedStateName |
사용되지 않음.
워크플로의 마지막 StateActivity를 가져오거나 설정합니다. |
CurrentStateName |
사용되지 않음.
현재 실행 중인 StateActivity의 이름을 가져옵니다. |
Description |
사용되지 않음.
Activity에 대한 사용자 정의 설명을 가져오거나 설정합니다. (다음에서 상속됨 Activity) |
DesignMode |
사용되지 않음.
이 인스턴스가 디자인 모드 또는 런타임 모드에 있는지 나타내는 값을 가져옵니다. (다음에서 상속됨 DependencyObject) |
DynamicUpdateCondition |
사용되지 않음.
파생 클래스에서 재정의되는 경우 동적 업데이트를 워크플로에서 수행할 수 있는지 여부를 결정하는 ActivityCondition을 가져오거나 설정합니다. |
Enabled |
사용되지 않음.
실행 및 유효성 검사에 이 인스턴스를 사용할 수 있는지 여부를 나타내는 값을 가져오거나 설정합니다. (다음에서 상속됨 Activity) |
EnabledActivities |
사용되지 않음.
사용하도록 설정된 Activities의 하위 집합을 나타내는 읽기 전용 컬렉션을 가져옵니다. (다음에서 상속됨 CompositeActivity) |
ExecutionResult |
사용되지 않음.
이 인스턴스를 실행하려는 마지막 시도의 ActivityExecutionResult를 가져옵니다. (다음에서 상속됨 Activity) |
ExecutionStatus |
사용되지 않음.
이 인스턴스의 현재 ActivityExecutionStatus를 가져옵니다. (다음에서 상속됨 Activity) |
InitialStateName |
사용되지 않음.
상태 시스템의 인스턴스가 만들어질 때 StateActivity를 포함하는 StateMachineWorkflowActivity를 가져오거나 설정합니다. |
IsDynamicActivity |
사용되지 않음.
활동이 워크플로 인스턴스의 기본 ActivityExecutionContext 내에서 실행 중인지 여부에 대한 정보를 가져옵니다. (다음에서 상속됨 Activity) |
Name |
사용되지 않음.
이 인스턴스의 이름을 가져오거나 설정합니다. 이 이름은 워크플로 프로젝트에 사용되는 프로그래밍 언어의 변수 명명 규칙을 따라야 합니다 (다음에서 상속됨 Activity) |
Parent |
사용되지 않음.
이 CompositeActivity이 들어 있는 Activity를 가져옵니다. (다음에서 상속됨 Activity) |
ParentDependencyObject |
사용되지 않음.
DependencyObject 그래프의 부모 DependencyObject를 가져옵니다. (다음에서 상속됨 DependencyObject) |
PreviousStateName |
사용되지 않음.
이전에 실행한 StateActivity의 이름을 가져옵니다. |
QualifiedName |
사용되지 않음.
활동의 정규화된 이름을 가져옵니다. 정규화된 활동 이름은 워크플로 인스턴스에서 항상 고유합니다. (다음에서 상속됨 Activity) |
Site |
사용되지 않음.
Site의 DependencyObject 구성 요소에 대한 참조를 가져오거나 설정합니다. (다음에서 상속됨 DependencyObject) |
UserData |
사용되지 않음.
사용자 지정 데이터를 이 클래스 인스턴스와 연결하는 IDictionary를 가져옵니다. (다음에서 상속됨 DependencyObject) |
WorkflowInstanceId |
사용되지 않음.
인스턴스와 연결된 Guid를 가져옵니다. (다음에서 상속됨 Activity) |
메서드
이벤트
Canceling |
사용되지 않음.
활동 실행이 취소될 때 발생합니다. (다음에서 상속됨 Activity) |
Closed |
사용되지 않음.
Activity에서 실행을 완료했을 때 발생합니다. (다음에서 상속됨 Activity) |
Compensating |
사용되지 않음.
Activity에서 보정 메서드를 실행할 때 발생합니다. (다음에서 상속됨 Activity) |
Executing |
사용되지 않음.
Activity가 실행될 때 발생합니다. (다음에서 상속됨 Activity) |
Faulting |
사용되지 않음.
인스턴스를 실행하는 동안 예외가 발생하면 이 이벤트가 발생합니다. (다음에서 상속됨 Activity) |
StatusChanged |
사용되지 않음.
실행 중인 ActivityExecutionStatus의 Activity가 변경될 때 발생합니다. (다음에서 상속됨 Activity) |
명시적 인터페이스 구현
IComponent.Disposed |
사용되지 않음.
구성 요소의 Disposed 이벤트를 처리하는 메서드를 나타냅니다. (다음에서 상속됨 DependencyObject) |
적용 대상
추가 정보
.NET