다음을 통해 공유


PersistenceIOParticipant 클래스

정의

지속성 프로세스를 통해 워크플로 인스턴스의 지속 및 로드 외에도 입력 및 출력 작업을 수행하는 메서드가 있는 PersistenceParticipant 클래스의 파생 클래스입니다.

public ref class PersistenceIOParticipant abstract : System::Activities::Persistence::PersistenceParticipant
public abstract class PersistenceIOParticipant : System.Activities.Persistence.PersistenceParticipant
type PersistenceIOParticipant = class
    inherit PersistenceParticipant
Public MustInherit Class PersistenceIOParticipant
Inherits PersistenceParticipant
상속
PersistenceIOParticipant

설명

호스트는 인스턴스를 지속할 때 다음 단계를 실행합니다.

  1. 지속할 값을 수집합니다.

  2. 단일 구조 값의 필드를 개별 값으로 매핑합니다.

  3. 지속성 공급자에게 SaveWorkflowCommand를 실행합니다.

  4. 지속성 트랜잭션에서 I/O를 수행합니다.

호스트가 단계를 완료한 후 다음 단계를 시작합니다. 예를 들어, 지속할 때 호스트는 두 번째 단계로 이동하기 전에 모든 지속성 참석자로부터 값을 수집합니다. 두 번째 단계에서는 호스트가 첫 번째 단계에서 수집한 모든 값을 두 번째 단계의 모든 지속성 참석자에게 매핑을 위해 제공합니다. 세 번째 단계에서는 호스트가 SaveWorkflowCommand를 호출할 때 첫 번째 및 두 번째 단계에서 수집한 모든 값을 지속성 공급자에게 제공합니다. 네 번째 단계에서는 호스트가 지속성 트랜잭션에서 수집한 모든 값을 모든 지속성 IO 참석자에게 제공합니다.

호스트는 지속성 인스턴스를 로드할 때 다음 단계를 실행합니다.

  1. 지속성 공급자에게 LoadWorkflowCommandLoadWorkflowByInstanceKeyCommand를 실행합니다.

  2. 지속성 트랜잭션에서 I/O를 수행합니다.

  3. 로드된 값을 게시합니다.

상위 수준에서 PersistenceParticipant 클래스로부터 파생된 워크플로 인스턴스 확장은 지속 프로세스의 첫 번째(수집) 및 두 번째(매핑) 단계와 로드 프로세스의 세 번째 단계(게시)에 참가할 수 있습니다. PersistenceIOParticipant 클래스로부터 파생된 워크플로 인스턴스 확장은 지속 프로세스의 네 번째 단계와 로드 프로세스의 두 번째 단계(I/O)에 추가로 참가할 수 있습니다.

생성자

PersistenceIOParticipant(Boolean, Boolean)

PersistenceIOParticipant 클래스의 인스턴스를 초기화합니다.

메서드

Abort()

보류 중인 IO(로드 또는 저장) 작업을 중단합니다.

BeginOnLoad(IDictionary<XName,Object>, TimeSpan, AsyncCallback, Object)

인스턴스 저장소에서 로드되는 인스턴스와 함께 추가 상태를 로드하는 비동기 작업을 시작합니다.

BeginOnSave(IDictionary<XName,Object>, IDictionary<XName,Object>, TimeSpan, AsyncCallback, Object)

인스턴스 저장소에 지속되는 인스턴스와 함께 추가 상태를 저장하는 비동기 작업을 시작합니다.

CollectValues(IDictionary<XName,Object>, IDictionary<XName,Object>)

호스트는 지속할 읽기/쓰기 값과 쓰기 전용 값을 수집하기 위해 사용자 지정 지속성 참석자에 대해 이 메서드를 호출합니다.

(다음에서 상속됨 PersistenceParticipant)
EndOnLoad(IAsyncResult)

비동기 로드 작업을 완료합니다.

EndOnSave(IAsyncResult)

비동기 저장 작업을 완료합니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

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

(다음에서 상속됨 Object)
MapValues(IDictionary<XName,Object>, IDictionary<XName,Object>)

호스트는 첫 번째 단계에서 값 수집을 완료한 후 이 메서드를 호출합니다. 호스트는 첫 번째 단계(CollectValues 단계) 중에 모든 지속성 참석자로부터 수집한 값의 읽기 전용 사전 두 개를 매핑을 위해 이 메서드로 전달합니다. 호스트는 이 메서드에 의해 반환된 사전의 값을 쓰기 전용 값 컬렉션에 추가합니다.

(다음에서 상속됨 PersistenceParticipant)
MemberwiseClone()

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

(다음에서 상속됨 Object)
PublishValues(IDictionary<XName,Object>)

호스트는 이 메서드를 호출하고 InstanceData 또는 LoadWorkflowCommand로 채워진 LoadWorkflowByInstanceKeyCommand 컬렉션에 로드된 모든 값을 사전 매개 변수로 전달합니다.

(다음에서 상속됨 PersistenceParticipant)
ToString()

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

(다음에서 상속됨 Object)

적용 대상