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
Производный
Атрибуты

Примеры

Реализацию этого типа, в которой в качестве хранилища сохраняемости используется файловая система, см. в файле FilePersistenceProviderFactory.cs в образце пакета SDK DurableServiceFactory.

Комментарии

На основе этого типа можно создавать производные классы для создания поставщиков сохраняемости устойчивых служб, использующих настраиваемые хранилища сохраняемости, такие как базы данных независимых разработчиков, файловая система или системы хранения с удаленным доступом. Сведения о создании предоставляемой системой реализации этого типа, использующей Microsoft SQL Server в качестве хранилища сохраняемости, см. в разделе SqlPersistenceProviderFactory.

Примечание

При создании реализаций поставщика сохраняемости важно сохранить исходную идентификацию потока в новых методах поставщика (таких как Load. В противном случае могут образоваться бреши в системе безопасности, поскольку операции будут выполняться под неправильной идентификацией.

Конструкторы

PersistenceProvider(Guid)

При реализации в производном классе инициализирует новый экземпляр класса PersistenceProvider.

Свойства

DefaultCloseTimeout

При переопределении в производном классе возвращает интервал времени по умолчанию, выделенный для успешного завершения операции закрытия.

(Унаследовано от CommunicationObject)
DefaultOpenTimeout

При переопределении в производном классе возвращает интервал времени по умолчанию, выделенный для успешного завершения операции открытия.

(Унаследовано от CommunicationObject)
Id

Представляет объект Guid, связанный с данным экземпляром.

IsDisposed

Возвращает значение, указывающее, удален ли объект связи.

(Унаследовано от CommunicationObject)
State

Возвращает значение, которое указывает на текущее состояние объекта связи.

(Унаследовано от CommunicationObject)
ThisLock

Возвращает взаимно исключающую блокировку, которая защищает экземпляр класса в процессе перехода между состояниями.

(Унаследовано от CommunicationObject)

Методы

Abort()

Вызывает мгновенный переход объекта связи из текущего состояния в состояние закрытия.

(Унаследовано от 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()

Вставляет операции обработки объекта связи после перехода объекта в состояние закрытия в связи с вызовом синхронной операции прерывания.

(Унаследовано от CommunicationObject)
OnBeginClose(TimeSpan, AsyncCallback, Object)

Вставляет операции обработки объекта связи после перехода объекта в состояние закрытия в связи с вызовом асинхронной операции закрытия.

(Унаследовано от CommunicationObject)
OnBeginOpen(TimeSpan, AsyncCallback, Object)

Вставляет операцию обработки объекта связи после перехода объекта в состояние открытия в связи с вызовом асинхронной операции открытия.

(Унаследовано от CommunicationObject)
OnClose(TimeSpan)

Вставляет операцию обработки объекта связи после перехода объекта в состояние закрытия в связи с вызовом синхронной операции закрытия.

(Унаследовано от CommunicationObject)
OnClosed()

Вызывается в процессе перехода объекта связи в состояние закрытия.

(Унаследовано от CommunicationObject)
OnClosing()

Вызывается в процессе перехода объекта связи в состояние закрытия.

(Унаследовано от CommunicationObject)
OnEndClose(IAsyncResult)

Завершает асинхронную операцию при закрытии объекта связи.

(Унаследовано от CommunicationObject)
OnEndOpen(IAsyncResult)

Завершает асинхронную операцию при открытии объекта связи.

(Унаследовано от CommunicationObject)
OnFaulted()

Вставляет операцию обработки объекта связи после перехода объекта в состояние Faulted в связи с вызовом синхронной операции ошибки.

(Унаследовано от CommunicationObject)
OnOpen(TimeSpan)

Вставляет операцию обработки объекта связи после перехода объекта в состояние открытия, которое должно быть выполнено в течение указанного интервала времени.

(Унаследовано от CommunicationObject)
OnOpened()

Вызывается в процессе перехода объекта связи в состояние Opened.

(Унаследовано от CommunicationObject)
OnOpening()

Вызывается в процессе перехода объекта связи в состояние открытия.

(Унаследовано от CommunicationObject)
Open()

Вызывает переход объекта связи из состояния Created в состояние Opened.

(Унаследовано от CommunicationObject)
Open(TimeSpan)

Вызывает переход объекта связи из состояния Created в состояние Opened в течение заданного интервала времени.

(Унаследовано от CommunicationObject)
ThrowIfDisposed()

Вызывает исключение, если объект связи удален.

(Унаследовано от CommunicationObject)
ThrowIfDisposedOrImmutable()

Создает исключение, если для свойства объекта связи State не установлено значение Created.

(Унаследовано от CommunicationObject)
ThrowIfDisposedOrNotOpen()

Создает исключение, если объект связи не находится в состоянии Opened.

(Унаследовано от CommunicationObject)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
Update(Object, TimeSpan)

При реализации в производном классе обновляет записи состояния службы в хранилище сохраняемости.

События

Closed

Происходит при переходе объекта связи в состояние Closed.

(Унаследовано от CommunicationObject)
Closing

Происходит при переходе объекта связи в состояние закрытия.

(Унаследовано от CommunicationObject)
Faulted

Происходит при переходе объекта связи в состояние Faulted.

(Унаследовано от CommunicationObject)
Opened

Происходит при переходе объекта связи в состояние Opened.

(Унаследовано от CommunicationObject)
Opening

Происходит при переходе объекта связи в состояние открытия.

(Унаследовано от CommunicationObject)

Применяется к