This documentation is archived and is not being maintained.

WorkflowApplication::Persist Method (TimeSpan)

Persists a workflow instance to an instance store using the specified time-out interval.

Namespace:  System.Activities
Assembly:  System.Activities (in System.Activities.dll)

void Persist(
	TimeSpan timeout


Type: System::TimeSpan
The interval in which the persist operation must complete before the operation is canceled and a TimeoutException is thrown.

If the workflow instance was previously loaded from persistence, then the same InstanceStore used to load the workflow is used for persistence. If the workflow was created and has not yet been persisted, then an InstanceStore must be configured before calling this method or else an InvalidOperationException is thrown when this method is called.

The following example calls Persist() to persist a workflow instance before the workflow is started. This example is from the StartAndUnloadInstance method in the Persisting a Workflow Instance sample.

WorkflowApplication application = new WorkflowApplication(activity);

application.InstanceStore = instanceStore;

//returning IdleAction.Unload instructs the WorkflowApplication to persists application state and remove it from memory  
application.PersistableIdle = (e) =>
    return PersistableIdleAction.Unload;

application.Unloaded = (e) =>

//This call is not required 
//Calling persist here captures the application durably before it has been started
id = application.Id;


.NET Framework

Supported in: 4

.NET Framework Client Profile

Supported in: 4

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.