<p>
What triggers persistence?
<ul>
<li>
Runtime decides when to persist
</li>
<li>
Persistence service decides how and where
</li>
<li>
<div>Conditions:</div>
<ul>
<li>
Anytime the WF goes idle (e.g. Delay Activity)
</li>
<li>
Host App can control by calling Unload or TryUnload methods
</li>
<li>
Transactions complete (TransactionScopeActivity or CompensatableTransactionScopeActivity)
</li>
<li>
Custom Activity with PersistOnCloseAttribute completes
</li>
<li>
CompensatableSequenceActivity completes
</li>
<li>
When the WF terminates or completes
</li>
</ul>
</li>
</ul>
</p>
<pre data-sub="prettyprint:_">
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section
name="WorkflowWithPersistence"
type="System.Workflow.Runtime.Configuration.WorkflowRuntimeSection,
System.Workflow.Runtime, Version=3.0.00000.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</configSections>
<WorkflowWithPersistence>
<CommonParameters>
<add name="ConnectionString" value="Data Source=(local);Initial Catalog=WF;Integrated Security=true"/>
</CommonParameters>
<Services>
<add
type="System.Workflow.Runtime.Hosting.SqlWorkflowPersistenceService,
System.Workflow.Runtime, Version=3.0.00000.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"
UnloadOnIdle="true"
/>
</Services>
</WorkflowWithPersistence>
</configuration>
</pre>