다음을 통해 공유


PersistenceProvider 클래스

정의

주의

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

모든 영속 서비스 지속성 공급자가 파생되는 추상 기본 클래스입니다.

public ref class PersistenceProvider abstract : System::ServiceModel::Channels::CommunicationObject
public abstract class PersistenceProvider : System.ServiceModel.Channels.CommunicationObject
[System.Obsolete("The WF3 types are deprecated.  Instead, please use the new WF4 types from System.Activities.*")]
public abstract class PersistenceProvider : System.ServiceModel.Channels.CommunicationObject
type PersistenceProvider = class
    inherit CommunicationObject
[<System.Obsolete("The WF3 types are deprecated.  Instead, please use the new WF4 types from System.Activities.*")>]
type PersistenceProvider = class
    inherit CommunicationObject
Public MustInherit Class PersistenceProvider
Inherits CommunicationObject
상속
PersistenceProvider
파생
특성

예제

파일 시스템을 지속성 저장소로 사용하는 이 형식의 구현에 대해서는 DurableServiceFactory SDK 샘플에서 FilePersistenceProviderFactory.cs 파일을 참조하십시오.

설명

사용자는 이 형식에서 파생된 클래스를 만들어 타사 데이터베이스, 파일 시스템과 같은 사용자 지정 지속성 스토리지를 사용하는 영속 서비스 지속성 제공자를 만들 수 있습니다. Microsoft SQL Server를 지속성 저장소로 사용하는 이 형식의 시스템 제공 구현을 만들려면 SqlPersistenceProviderFactory를 참조하십시오.

참고

지속성 공급자 구현을 만들 때는 Load와 같은 새 공급자의 메서드에서 스레드의 원래 ID를 유지하는 것이 중요합니다. 그렇지 않으면 작업이 잘못된 ID로 실행되어 보안 루프홀이 생성될 수 있습니다.

생성자

PersistenceProvider(Guid)

파생 클래스에서 구현되는 경우에는 PersistenceProvider 클래스의 새 인스턴스를 초기화합니다.

속성

DefaultCloseTimeout

파생 클래스에서 재정의되는 경우 닫기 작업을 완료하기 위해 제공되는 기본 시간 간격을 가져옵니다.

(다음에서 상속됨 CommunicationObject)
DefaultOpenTimeout

파생 클래스에서 재정의되는 경우 열기 작업을 완료하기 위해 제공되는 기본 시간 간격을 가져옵니다.

(다음에서 상속됨 CommunicationObject)
Id

이 인스턴스와 연결된 Guid를 나타냅니다.

IsDisposed

통신 개체가 삭제되었는지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 CommunicationObject)
State

통신 개체의 현재 상태를 나타내는 값을 가져옵니다.

(다음에서 상속됨 CommunicationObject)
ThisLock

상태 전환 중에 클래스 인스턴스를 보호하는 상호 배타적인 전용 잠금을 가져옵니다.

(다음에서 상속됨 CommunicationObject)

메서드

Abort()

통신 개체가 현재 상태에서 Closing 상태로 즉시 전환되도록 합니다.

(다음에서 상속됨 CommunicationObject)
BeginClose(AsyncCallback, Object)

통신 개체를 닫기 위한 비동기 작업을 시작합니다.

(다음에서 상속됨 CommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

지정된 제한 시간 내에서 통신 개체를 닫기 위한 비동기 작업을 시작합니다.

(다음에서 상속됨 CommunicationObject)
BeginCreate(Object, TimeSpan, AsyncCallback, Object)

파생 클래스에서 구현되는 경우 Create 단계의 시작을 나타냅니다. Create 단계는 서비스 인스턴스 레코드가 지속성 저장소에 처음으로 만들어질 때 발생합니다.

BeginDelete(Object, TimeSpan, AsyncCallback, Object)

파생 클래스에서 구현되는 경우 Delete 단계의 시작을 나타냅니다. Delete 단계는 서비스 상태 데이터가 지속성 저장소에서 영구적으로 삭제될 때 발생합니다.

BeginLoad(TimeSpan, AsyncCallback, Object)

파생 클래스에서 구현되는 경우 Load 단계의 시작을 나타냅니다. Load 단계는 상태 데이터가 지속성 저장소에서 지속성 제공자로 로드될 때 발생합니다.

BeginLoadIfChanged(TimeSpan, Object, AsyncCallback, Object)

파생 클래스에서 구현되는 경우 LoadIfChanged 단계의 시작을 나타냅니다. LoadIfChanged 단계는 상태 데이터가 지속성 저장소에서 지속성 공급자로 로드되고 지속성 저장소의 상태 데이터가 변경된 경우에 발생합니다.

BeginOpen(AsyncCallback, Object)

통신 개체를 열기 위한 비동기 작업을 시작합니다.

(다음에서 상속됨 CommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

지정된 시간 간격 내에서 통신 개체를 열기 위한 비동기 작업을 시작합니다.

(다음에서 상속됨 CommunicationObject)
BeginUpdate(Object, TimeSpan, AsyncCallback, Object)

파생 클래스에서 구현되는 경우 Update 단계의 시작을 나타냅니다. Update 단계는 서비스 상태 데이터가 지속성 저장소에서 업데이트될 때 발생합니다.

Close()

통신 개체가 현재 상태에서 Closed 상태로 전환되도록 합니다.

(다음에서 상속됨 CommunicationObject)
Close(TimeSpan)

통신 개체가 지정된 시간 간격 내에 현재 상태에서 Closed 상태로 전환되도록 합니다.

(다음에서 상속됨 CommunicationObject)
Create(Object, TimeSpan)

파생 클래스에서 구현되는 경우 지속성 저장소에 서비스 상태 레코드를 만듭니다.

Delete(Object, TimeSpan)

파생 클래스에서 구현되는 경우 지속성 저장소에서 서비스 상태 정보를 영구적으로 삭제합니다.

EndClose(IAsyncResult)

통신 개체를 닫기 위한 비동기 작업을 완료합니다.

(다음에서 상속됨 CommunicationObject)
EndCreate(IAsyncResult)

파생 클래스에서 구현되는 경우 Create 단계의 끝을 나타냅니다. Create 단계는 서비스 상태 레코드가 지속성 저장소에 처음으로 만들어질 때 발생합니다.

EndDelete(IAsyncResult)

파생 클래스에서 구현되는 경우 Delete 단계의 끝을 나타냅니다. Delete 단계는 상태 데이터가 지속성 저장소에서 영구적으로 삭제될 때 발생합니다.

EndLoad(IAsyncResult)

파생 클래스에서 구현되는 경우 Load 단계의 끝을 나타냅니다. Load 단계는 상태 데이터가 지속성 저장소에서 지속성 제공자로 로드될 때 발생합니다.

EndLoadIfChanged(IAsyncResult, Object)

파생 클래스에서 구현되는 경우 LoadIfChanged 단계의 끝을 나타냅니다. LoadIfChanged 단계는 상태 데이터가 지속성 저장소에서 지속성 공급자로 로드되고 지속성 저장소의 상태 데이터가 변경된 경우에 발생합니다.

EndOpen(IAsyncResult)

통신 개체를 열기 위한 비동기 작업을 완료합니다.

(다음에서 상속됨 CommunicationObject)
EndUpdate(IAsyncResult)

Update 단계의 끝을 나타냅니다. Update 단계는 서비스 상태 레코드가 지속성 저장소에 업데이트될 때 발생합니다.

Equals(Object)

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

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

통신 개체가 현재 상태에서 Faulted 상태로 전환되도록 합니다.

(다음에서 상속됨 CommunicationObject)
GetCommunicationObjectType()

통신 개체의 형식을 가져옵니다.

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

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

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

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

(다음에서 상속됨 Object)
Load(TimeSpan)

파생 클래스에서 구현되는 경우 지속성 저장소에서 서비스 상태 정보를 로드합니다.

LoadIfChanged(TimeSpan, Object, Object)

파생 클래스에서 구현되는 경우 해당 데이터가 변경되면 지속성 저장소에서 서비스 상태 정보를 로드합니다.

MemberwiseClone()

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

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

통신 개체가 동기 중단 작업의 호출로 인해 Closing 상태로 전환된 후 해당 통신 개체에 대한 처리를 삽입합니다.

(다음에서 상속됨 CommunicationObject)
OnBeginClose(TimeSpan, AsyncCallback, Object)

통신 개체가 비동기 닫기 작업의 호출로 인해 Closing 상태로 전환된 후 처리를 삽입합니다.

(다음에서 상속됨 CommunicationObject)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

통신 개체가 비동기 열기 작업의 호출로 인해 Opening 상태로 전환된 후 해당 통신 개체에 대한 처리를 삽입합니다.

(다음에서 상속됨 CommunicationObject)
OnClose(TimeSpan)

통신 개체가 동기화 닫기 작업의 호출로 인해 Closing 상태로 전환된 후 해당 통신 개체에 대한 처리를 삽입합니다.

(다음에서 상속됨 CommunicationObject)
OnClosed()

통신 개체가 Closing 상태로 전환되는 중에 호출됩니다.

(다음에서 상속됨 CommunicationObject)
OnClosing()

통신 개체가 Closing 상태로 전환되는 중에 호출됩니다.

(다음에서 상속됨 CommunicationObject)
OnEndClose(IAsyncResult)

통신 개체를 닫을 때 비동기 작업을 완료합니다.

(다음에서 상속됨 CommunicationObject)
OnEndOpen(IAsyncResult)

통신 개체를 열 때 비동기 작업을 완료합니다.

(다음에서 상속됨 CommunicationObject)
OnFaulted()

통신 개체가 동기 오류 작업의 호출로 인해 Faulted 상태로 전환된 후 해당 통신 개체에 대한 처리를 삽입합니다.

(다음에서 상속됨 CommunicationObject)
OnOpen(TimeSpan)

통신 개체가 Opening 상태로 전환한 후 해당 개체에 대해 지정된 기간 내에 완료되어야 하는 처리를 삽입합니다.

(다음에서 상속됨 CommunicationObject)
OnOpened()

통신 개체가 Opened 상태로 전환되는 중에 호출됩니다.

(다음에서 상속됨 CommunicationObject)
OnOpening()

통신 개체가 Opening 상태로 전환되는 중에 호출됩니다.

(다음에서 상속됨 CommunicationObject)
Open()

통신 개체가 Created 상태에서 Opened 상태로 전환되도록 합니다.

(다음에서 상속됨 CommunicationObject)
Open(TimeSpan)

통신 개체가 지정된 시간 간격 내에 Created 상태에서 Opened 상태로 전환되도록 합니다.

(다음에서 상속됨 CommunicationObject)
ThrowIfDisposed()

통신 개체가 삭제되면 예외를 throw합니다.

(다음에서 상속됨 CommunicationObject)
ThrowIfDisposedOrImmutable()

통신 개체의 State 속성이 Created 상태로 설정되지 않은 경우 예외를 throw합니다.

(다음에서 상속됨 CommunicationObject)
ThrowIfDisposedOrNotOpen()

통신 개체가 Opened 상태가 아니면 예외를 throw합니다.

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

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

(다음에서 상속됨 Object)
Update(Object, TimeSpan)

파생 클래스에서 구현되는 경우 지속성 저장소에 서비스 상태 레코드를 업데이트합니다.

이벤트

Closed

통신 개체가 Closed 상태로 전환될 때 발생합니다.

(다음에서 상속됨 CommunicationObject)
Closing

통신 개체가 Closing 상태로 전환될 때 발생합니다.

(다음에서 상속됨 CommunicationObject)
Faulted

통신 개체가 Faulted 상태로 전환될 때 발생합니다.

(다음에서 상속됨 CommunicationObject)
Opened

통신 개체가 Opened 상태로 전환될 때 발생합니다.

(다음에서 상속됨 CommunicationObject)
Opening

통신 개체가 Opening 상태로 전환될 때 발생합니다.

(다음에서 상속됨 CommunicationObject)

적용 대상