This documentation is archived and is not being maintained.

PersistenceProvider Class

The abstract base class from which all durable service persistence providers are derived.

Namespace:  System.ServiceModel.Persistence
Assembly:  System.WorkflowServices (in System.WorkflowServices.dll)

public abstract class PersistenceProvider : CommunicationObject

Users can create classes derived from this type to create durable service persistence providers that use custom persistence stores, such as third-party databases, the file system, or storage systems accessed remotely. To create an out-of-box implementation of this type that uses Microsoft SQL Server as a persistence store, see SqlPersistenceProviderFactory.


When creating persistence provider implementations, it is important to maintain the thread's original identity in the new provider's methods (such as Load. Otherwise, security loopholes could be created, because operations would then run under the wrong identity.

For an implementation of this type that uses the file system as a persistence store, see the FilePersistenceProviderFactory.cs file in the DurableServiceFactory SDK sample.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5