다음을 통해 공유


WorkflowInstance 클래스

정의

주의

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

워크플로 인스턴스를 나타냅니다.

public ref class WorkflowInstance sealed
public sealed class WorkflowInstance
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public sealed class WorkflowInstance
type WorkflowInstance = class
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type WorkflowInstance = class
Public NotInheritable Class WorkflowInstance
상속
WorkflowInstance
특성

예제

다음 코드 예제에서는 워크플로 호스트에서 WorkflowInstance를 만들고 시작하는 방법을 보여 줍니다. 또한 WorkflowRuntime 인스턴스를 만들고 서비스를 런타임에 추가한 다음 WorkflowInstance 개체를 만드는 권장 방법을 보여 줍니다. 이 코드에서는 WorkflowInstance 메서드를 호출하고 이전에 만든 형식을 전달하여 CreateWorkflow를 초기화합니다. WorkflowInstanceStart 메서드 호출을 사용하여 시작됩니다.

이 코드 예제는 Program.cs 파일에 있는 Canceling a Workflow SDK 샘플의 일부입니다. 자세한 내용은 워크플로 취소 하면합니다.

Type type = typeof(SampleWorkflow1);
WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
workflowInstance.Start();
Dim workflowInstance As WorkflowInstance
workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
workflowInstance.Start()

설명

참고

이 자료에서는 더 이상 사용되지 않는 형식과 네임스페이스에 대해 설명합니다. 자세한 내용은 Deprecated Types in Windows Workflow Foundation 4.5(Windows Workflow Foundation 4.5에서 사용되지 않는 형식)를 참조하세요.

WorkflowInstance 클래스는 워크플로 인스턴스 실행을 제어하는 데 사용할 수 있는 메서드와 속성을 노출합니다. 기본적으로 워크플로 런타임 엔진이 사용하는 실제 워크플로 인스턴스에 대한 프록시입니다. 호스트나 서비스는 WorkflowInstance 클래스에 포함된 적절한 메서드를 호출하여 워크플로 인스턴스에서 작업을 수행하도록 워크플로 런타임 엔진에 지정할 수 있습니다. 요청된 작업이 잘못된 경우, 예를 들어 호스트가 이미 완료된 워크플로 인스턴스에서 Load를 호출하는 경우 워크플로 런타임 엔진이 해당 예외를 발생시킵니다.

참고

호스트 애플리케이션의 호출이 반환되지 않아 워크플로 인스턴스가 응답하지 않는 경우 런타임을 다시 시작해야만 인스턴스를 복구할 수 있습니다. 그러나 인스턴스가 강제로 언로드, 중단 또는 일시 중단된 경우에는 WorkflowInstance.Resume 메서드를 호출하여 계속할 수 있습니다.

속성

InstanceId
사용되지 않음.

워크플로 인스턴스의 고유 식별자를 가져옵니다.

WorkflowRuntime
사용되지 않음.

이 워크플로 인스턴스에 대한 WorkflowRuntime을 가져옵니다.

메서드

Abort()
사용되지 않음.

워크플로 인스턴스를 중단합니다.

ApplyWorkflowChanges(WorkflowChanges)
사용되지 않음.

WorkflowChanges 개체에 지정된 워크플로 인스턴스 변경 내용을 적용합니다.

EnqueueItem(IComparable, Object, IPendingWork, Object)
사용되지 않음.

메시지를 지정된 워크플로 큐에 동기적으로 게시합니다.

EnqueueItemOnIdle(IComparable, Object, IPendingWork, Object)
사용되지 않음.

워크플로가 유휴 상태이면 메시지를 지정된 워크플로 큐에 게시합니다. EnqueueItemOnIdle(IComparable, Object, IPendingWork, Object)은 워크플로가 유휴 지점에 도달할 때까지 기다리고 워크플로 스케줄러가 유휴 상태인지, 즉 실행 중인 활성 작업이 없는지 확인한 후 큐에 삽입됩니다.

Equals(Object)
사용되지 않음.

지정된 개체가 WorkflowInstance와 같은지 여부를 나타내는 값을 반환합니다.

GetHashCode()
사용되지 않음.

이 워크플로 인스턴스에 대한 해시 코드를 반환합니다.

GetType()
사용되지 않음.

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
GetWorkflowDefinition()
사용되지 않음.

이 워크플로 인스턴스에 대한 루트 활동을 검색합니다.

GetWorkflowNextTimerExpiration()
사용되지 않음.

WorkflowInstance가 타이머 메시지를 전달하도록 예약된 다음 시점을 반환합니다.

GetWorkflowQueueData()
사용되지 않음.

이 워크플로 인스턴스와 연결된 워크플로 큐에 대해 보류 중인 항목과 구독되는 활동을 포함하는 WorkflowQueueInfo 개체의 컬렉션을 가져옵니다.

Load()
사용되지 않음.

이전에 언로드된 워크플로 인스턴스를 로드합니다.

MemberwiseClone()
사용되지 않음.

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ReloadTrackingProfiles()
사용되지 않음.

이 워크플로 인스턴스에 대한 추적 프로필을 다시 로드합니다.

Resume()
사용되지 않음.

이전에 일시 중단된 워크플로 인스턴스의 실행을 계속합니다.

Start()
사용되지 않음.

워크플로 인스턴스의 실행을 시작합니다.

Suspend(String)
사용되지 않음.

워크플로 인스턴스를 일시 중단합니다.

Terminate(String)
사용되지 않음.

워크플로 인스턴스를 동기 방식으로 종료합니다.

ToString()
사용되지 않음.

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
TryUnload()
사용되지 않음.

인스턴스가 일시 중단되거나 유휴 상태이면 메모리의 워크플로 인스턴스를 지속성 저장소로 언로드합니다.

Unload()
사용되지 않음.

메모리의 워크플로 인스턴스를 지속성 저장소로 언로드합니다. 이 호출은 현재 예약된 작업이 완료된 후 또는 트랜잭션 범위의 끝까지 차단됩니다.

적용 대상

스레드 보안

이 형식은 스레드로부터 안전합니다.

추가 정보