SqlPersistenceProviderFactory Class
A system-provided PersistenceProviderFactory implementation used to create a LockingPersistenceProvider instance that uses a SQL database to store persisted service state data.
System.ServiceModel.Channels::CommunicationObject
System.ServiceModel.Persistence::PersistenceProviderFactory
System.ServiceModel.Persistence::SqlPersistenceProviderFactory
Assembly: System.WorkflowServices (in System.WorkflowServices.dll)
The SqlPersistenceProviderFactory type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | SqlPersistenceProviderFactory(NameValueCollection) | Initializes a new instance of the SqlPersistenceProviderFactory class, configured with the specified parameter collection. |
![]() | SqlPersistenceProviderFactory(String) | Initializes a new instance of the SqlPersistenceProviderFactory class, configured with the specified connection string. |
![]() | SqlPersistenceProviderFactory(String, Boolean) | Initializes a new instance of the SqlPersistenceProviderFactory class, configured with the specified connection string and serializeAsText parameters. |
![]() | SqlPersistenceProviderFactory(String, Boolean, TimeSpan) | Initializes a new instance of the SqlPersistenceProviderFactory class, configured with the specified connection string, serializeAsText, and lockTimeout parameters. |
| Name | Description | |
|---|---|---|
![]() | ConnectionString | Gets the connection parameters for persistence provider instances created with this factory. |
![]() | DefaultCloseTimeout | Gets the default time-out value used when persistence providers created with this factory are closed. (Overrides CommunicationObject::DefaultCloseTimeout.) |
![]() | DefaultOpenTimeout | Gets the default time-out value used when persistence provider is opened. (Overrides CommunicationObject::DefaultOpenTimeout.) |
![]() | IsDisposed | Gets a value that indicates whether the communication object has been disposed. (Inherited from CommunicationObject.) |
![]() | LockTimeout | The time-out for lock ownership used by persistence provider instances created by this instance. Locked instances are automatically unlocked after this time period. |
![]() | SerializeAsText | Specifies whether data is serialized as text rather than binary in persistence providers created with this factory. |
![]() | State | Gets a value that indicates the current state of the communication object. (Inherited from CommunicationObject.) |
![]() | ThisLock | Gets the mutually exclusive lock that protects the class instance during a state transition. (Inherited from CommunicationObject.) |
| Name | Description | |
|---|---|---|
![]() | Abort | Causes a communication object to transition immediately from its current state into the closing state. (Inherited from CommunicationObject.) |
![]() | BeginClose(AsyncCallback, Object) | Begins an asynchronous operation to close a communication object. (Inherited from CommunicationObject.) |
![]() | BeginClose(TimeSpan, AsyncCallback, Object) | Begins an asynchronous operation to close a communication object with a specified timeout. (Inherited from CommunicationObject.) |
![]() | BeginOpen(AsyncCallback, Object) | Begins an asynchronous operation to open a communication object. (Inherited from CommunicationObject.) |
![]() | BeginOpen(TimeSpan, AsyncCallback, Object) | Begins an asynchronous operation to open a communication object within a specified interval of time. (Inherited from CommunicationObject.) |
![]() | Close() | Causes a communication object to transition from its current state into the closed state. (Inherited from CommunicationObject.) |
![]() | Close(TimeSpan) | Causes a communication object to transition from its current state into the closed state within a specified interval of time. (Inherited from CommunicationObject.) |
![]() | CreateProvider | Initializes a new LockingPersistenceProvider instance that uses a SQL database as its persistence store. (Overrides PersistenceProviderFactory::CreateProvider(Guid).) |
![]() | EndClose | Completes an asynchronous operation to close a communication object. (Inherited from CommunicationObject.) |
![]() | EndOpen | Completes an asynchronous operation to open a communication object. (Inherited from CommunicationObject.) |
![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() | Fault | Causes a communication object to transition from its current state into the faulted state. (Inherited from CommunicationObject.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetCommunicationObjectType | Gets the type of communication object. (Inherited from CommunicationObject.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | OnAbort | Represents the Abort phase. (Overrides CommunicationObject::OnAbort().) |
![]() | OnBeginClose | Represents the beginning of the Close phase. (Overrides CommunicationObject::OnBeginClose(TimeSpan, AsyncCallback, Object).) |
![]() | OnBeginOpen | Represents the beginning of the Open phase. (Overrides CommunicationObject::OnBeginOpen(TimeSpan, AsyncCallback, Object).) |
![]() | OnClose | Represents the Close phase. (Overrides CommunicationObject::OnClose(TimeSpan).) |
![]() | OnClosed | Invoked during the transition of a communication object into the closing state. (Inherited from CommunicationObject.) |
![]() | OnClosing | Invoked during the transition of a communication object into the closing state. (Inherited from CommunicationObject.) |
![]() | OnEndClose | Represents the end of the Close phase. (Overrides CommunicationObject::OnEndClose(IAsyncResult).) |
![]() | OnEndOpen | Represents the end of the Open phase. (Overrides CommunicationObject::OnEndOpen(IAsyncResult).) |
![]() | OnFaulted | Inserts processing on a communication object after it transitions to the faulted state due to the invocation of a synchronous fault operation. (Inherited from CommunicationObject.) |
![]() | OnOpen | Represents the Open phase. (Overrides CommunicationObject::OnOpen(TimeSpan).) |
![]() | OnOpened | Invoked during the transition of a communication object into the opened state. (Inherited from CommunicationObject.) |
![]() | OnOpening | Invoked during the transition of a communication object into the opening state. (Inherited from CommunicationObject.) |
![]() | Open() | Causes a communication object to transition from the created state into the opened state. (Inherited from CommunicationObject.) |
![]() | Open(TimeSpan) | Causes a communication object to transition from the created state into the opened state within a specified interval of time. (Inherited from CommunicationObject.) |
![]() | ThrowIfDisposed | Throws an exception if the communication object is disposed. (Inherited from CommunicationObject.) |
![]() | ThrowIfDisposedOrImmutable | Throws an exception if the communication object the State property is not set to the Created state. (Inherited from CommunicationObject.) |
![]() | ThrowIfDisposedOrNotOpen | Throws an exception if the communication object is not in the Opened state. (Inherited from CommunicationObject.) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
| Name | Description | |
|---|---|---|
![]() | Closed | Occurs when a communication object transitions into the closed state. (Inherited from CommunicationObject.) |
![]() | Closing | Occurs when a communication object transitions into the closing state. (Inherited from CommunicationObject.) |
![]() | Faulted | Occurs when a communication object transitions into the faulted state. (Inherited from CommunicationObject.) |
![]() | Opened | Occurs when a communication object transitions into the opened state. (Inherited from CommunicationObject.) |
![]() | Opening | Occurs when a communication object transitions into the opening state. (Inherited from CommunicationObject.) |
The SqlPersistenceProviderFactory class represents a factory class for a fully-functional, durable service persistence provider. You can use this system-provided provider to persist and retrieve state information about a durable service.
In addition to persistence, the provider created by the SqlPersistenceProviderFactory class implements locking of service state data records by inheriting from the abstract LockingPersistenceProvider class. Methods that interact with persisted data (such as Create() or Update()) have an optional parameter (lockInstance) that defines whether locks on the data in question are released or maintained.
Note |
|---|
PersistenceException exceptions thrown by SqlPersistenceProviderFactory do not have their exception details hidden by default. To protect against security vulnerabilities, these details can be hidden by setting IncludeExceptionDetailInFaults to false. |
Note |
|---|
The SQL Persistence Provider stores and retrieves data from a SQL Server database. The host must create a secure SQL Server environment to protect against attackers gaining read/write access to the instance state either in the database or on the wire between the application and the database. |
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
