SqlWorkflowPersistenceService 클래스

정의

주의

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

SQL 데이터베이스를 사용하여 워크플로 상태 정보를 저장하는 지속성 서비스를 나타냅니다.

public ref class SqlWorkflowPersistenceService : System::Workflow::Runtime::Hosting::WorkflowPersistenceService, System::Workflow::Runtime::IPendingWork
public class SqlWorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowPersistenceService, System.Workflow.Runtime.IPendingWork
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public class SqlWorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowPersistenceService, System.Workflow.Runtime.IPendingWork
type SqlWorkflowPersistenceService = class
    inherit WorkflowPersistenceService
    interface IPendingWork
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type SqlWorkflowPersistenceService = class
    inherit WorkflowPersistenceService
    interface IPendingWork
Public Class SqlWorkflowPersistenceService
Inherits WorkflowPersistenceService
Implements IPendingWork
상속
특성
구현

설명

메모

이 재질에서는 사용되지 않는 형식 및 네임스페이스에 대해 설명합니다. 자세한 내용은 Windows Workflow Foundation 4.5 참조하세요.

클래스는 SqlWorkflowPersistenceService 완벽하게 작동하는 지속성 서비스를 나타냅니다. 이 서비스를 기본적으로 사용하여 워크플로 런타임 엔진에서 요청할 때 워크플로 인스턴스에 대한 워크플로 상태 정보를 유지 및 검색할 수 있습니다.

에서 SqlWorkflowPersistenceService 제공하는 WorkflowCommitWorkBatchService워크플로 트랜잭션 일괄 처리 기능에 참여합니다. 즉, 보류 중인 쓰기를 나타내는 개체를 SQL 데이터베이스 WorkBatch 에 추가하고 인터페이스를 IPendingWork 구현합니다.

워크플로 SqlWorkflowPersistenceService 인스턴스의 잠금을 지원합니다. 이 기능은 여러 워크플로 런타임이 동일한 데이터베이스를 공유하는 경우에 사용됩니다. SQL 데이터베이스 테이블의 열은 워크플로 런타임에서 사용할 때마다 워크플로 인스턴스를 잠긴 것으로 표시하는 데 사용됩니다. SqlWorkflowPersistenceService 다른 런타임에서 "사용 중"으로 표시된 워크플로 인스턴스를 로드하지 않습니다. 일반적으로 이러한 잠금은 워크플로 인스턴스가 유휴 상태, 완료 또는 종료 시 유지될 때 해제됩니다. 비활성 기간 후에 잠금을 자동으로 해제할 수도 있습니다. 이 비활성 기간은 클래스의 SqlWorkflowPersistenceService 생성자를 사용하여 설정할 수 있습니다. 구성 파일을 통해 설정할 수도 있습니다.

일반적으로 지속성 서비스에 대한 자세한 내용은 클래스를 WorkflowPersistenceService 참조하세요.

워크플로 인스턴스에는 타이머가 포함될 수 있습니다(예: 타이머가 있는 DelayActivity경우). 타이머 SqlWorkflowPersistenceService 를 포함하는 워크플로의 경우 워크플로의 다음 타이머가 만료되는 시간을 기록합니다. SqlWorkflowPersistenceService 주기적으로 데이터베이스를 폴링하여 타이머가 만료된 워크플로를 찾습니다. 폴링 간격의 빈도는 생성자를 사용 SqlWorkflowPersistenceService 하거나 구성 파일을 사용하여 설정할 수 있습니다.

메모

워크플로 애플리케이션에서 SqlTrackingService 둘 다 SqlWorkflowPersistenceService 사용하는 경우 지속성과 추적 모두에 단일 데이터베이스를 사용하는 것이 좋습니다.

생성자

Name Description
SqlWorkflowPersistenceService(NameValueCollection)
사용되지 않음.

지정된 매개 변수를 사용하여 클래스의 SqlWorkflowPersistenceService 새 인스턴스를 초기화합니다.

SqlWorkflowPersistenceService(String, Boolean, TimeSpan, TimeSpan)
사용되지 않음.

데이터베이스 연결 문자열 및 기타 매개 변수를 사용하여 SqlWorkflowPersistenceService 클래스의 새 인스턴스를 초기화합니다.

SqlWorkflowPersistenceService(String)
사용되지 않음.

데이터베이스 연결 문자열 사용하여 SqlWorkflowPersistenceService 클래스의 새 인스턴스를 초기화합니다.

속성

Name Description
EnableRetries
사용되지 않음.

작업 일괄 처리를 다시 커밋할지 여부를 SqlWorkflowPersistenceService 지정하는 값을 가져오거나 설정합니다.

LoadingInterval
사용되지 않음.

로드 간격의 길이를 가져옵니다.

Runtime
사용되지 않음.

WorkflowRuntime 이 서비스에 대한 값을 가져옵니다.

(다음에서 상속됨 WorkflowRuntimeService)
ServiceInstanceId
사용되지 않음.

서비스 인스턴스 식별자를 가져옵니다.

State
사용되지 않음.

의 상태를 WorkflowRuntimeService가져옵니다.

(다음에서 상속됨 WorkflowRuntimeService)

메서드

Name Description
Equals(Object)
사용되지 않음.

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

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

모든 지속형 워크플로에 대한 인스턴스 설명을 검색합니다.

GetHashCode()
사용되지 않음.

기본 해시 함수로 사용됩니다.

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

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

(다음에서 상속됨 Object)
LoadCompletedContextActivity(Guid, Activity)
사용되지 않음.

데이터베이스에서 지정된 완료된 범위를 검색합니다.

LoadExpiredTimerWorkflowIds()
사용되지 않음.

만료된 타이머가 있는 워크플로의 ID 목록을 검색합니다.

LoadWorkflowInstanceState(Guid)
사용되지 않음.

데이터베이스에서 지정된 워크플로 인스턴스 상태를 검색합니다.

MemberwiseClone()
사용되지 않음.

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

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

새 타이머를 시작하고 실행 중인 워크플로 인스턴스를 복구합니다.

OnStopped()
사용되지 않음.

파생 클래스에서 재정의되는 경우 워크플로 런타임 엔진이 이벤트를 발생시킬 때 호출되는 메서드를 Stopped 나타냅니다.

(다음에서 상속됨 WorkflowRuntimeService)
RaiseServicesExceptionNotHandledEvent(Exception, Guid)
사용되지 않음.

ServicesExceptionNotHandled 이벤트를 발생시킵니다.

(다음에서 상속됨 WorkflowRuntimeService)
SaveCompletedContextActivity(Activity)
사용되지 않음.

지정된 완료된 범위의 상태를 저장합니다.

SaveWorkflowInstanceState(Activity, Boolean)
사용되지 않음.

지정된 워크플로 인스턴스 상태를 저장합니다.

Start()
사용되지 않음.

를 시작합니다 SqlWorkflowPersistenceService.

Stop()
사용되지 않음.

서비스와 타이머를 중지합니다.

ToString()
사용되지 않음.

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

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

워크플로가 유휴 상태일 때 언로드되는지 여부를 나타내는 값을 반환합니다.

UnlockWorkflowInstanceState(Activity)
사용되지 않음.

지정된 워크플로 인스턴스 상태에 대한 액세스의 잠금을 해제합니다.

명시적 인터페이스 구현

Name Description
IPendingWork.Commit(Transaction, ICollection)
사용되지 않음.

ICollection 직렬화된 상태 개체를 데이터베이스에 씁니다.

IPendingWork.Complete(Boolean, ICollection)
사용되지 않음.

작업 일괄 처리를 완료하고 모든 리소스를 해제합니다.

IPendingWork.MustCommit(ICollection)
사용되지 않음.

serialize된 상태 개체의 컬렉션을 데이터베이스에 쓸지 여부를 나타내는 값을 반환합니다.

적용 대상