Condividi tramite


<sqlWorkflowInstanceStore>

Comportamento del servizio che consente di configurare la funzionalità SqlWorkflowInstanceStore che supporta la persistenza delle informazioni sullo stato per le istanze del servizio flusso di lavoro in un database di SQL Server 2005 o SQL Server 2008. Per altre informazioni su questa funzionalità, vedere Archivio istanze del flusso di lavoro SQL.

<Configurazione>
   <Sistema. Servicemodel>
     <Comportamenti>
       <Servicebehaviors>
         <Comportamento>
           <sqlWorkflowInstanceStore>

Sintassi

<behaviors>
  <serviceBehaviors>
    <behavior name="String">
      <sqlWorkflowInstanceStore connectionStringName="String"
                                hostLockRenewalPeriod="TimeSpan"
                                instanceCompletionAction="DeleteNothing/DeleteAll"
                                instanceEncodingAction="None/GZip"
                                instanceLockedExceptionAction="NoRetry/BasicRetry/AggressiveRetry"
                                runnableInstancesDetectionPeriod="TimeSpan" />
    </behavior>
  </serviceBehaviors>
</behaviors>  

Attributi ed elementi

Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli elementi padre.

Attributi

Attributo Descrizione
connectionString Stringa contenente una stringa di connessione utilizzata per connettersi a un database di persistenza sottostante.
connectionStringName Stringa contenente una stringa di connessione denominata per il server database. Un esempio di stringa di connessione denominata è "DefaultConnectionString".
hostLockRenewalPeriod Valore TimeSpan che specifica il periodo di tempo entro il quale l'host deve rinnovare il blocco su un'istanza. Se l'host non rinnova il blocco nel periodo di tempo specificato, l'istanza viene sbloccata e può essere scelta da un altro host.

Lo scaricamento di un flusso di lavoro lo rende anche persistente. Se questo attributo viene impostato su zero, l'istanza del flusso di lavoro viene resa persistente e scaricata immediatamente dopo che il flusso di lavoro diventa inattivo. L'impostazione di questo attributo su TimeSpan.MaxValue comporta in realtà la disabilitazione dell'operazione di scaricamento. Le istanze del flusso di lavoro inattive non vengono mai scaricate.
instanceCompletionAction Valore che specifica se i dati dell'istanza del flusso di lavoro vengono conservati nell'archivio di persistenza in seguito al completamento dell'istanza del flusso di lavoro o se vengono eliminati. Questo valore è di tipo InstanceCompletionAction.

Le azioni enumerate consistono nell'eliminazione dei dati dell'istanza dall'archivio di persistenza o nella relativa conservazione al termine dell'operazione dell'istanza.

La conservazione delle istanze al completamento comporta la rapida crescita del database di persistenza e pertanto influisce sulle prestazioni del database. È consigliabile configurare criteri di cancellazione dei dati del database per eliminare questi record periodicamente e garantire che le prestazioni del database soddisfino il livello di prestazioni richiesto.
instanceEncodingOption Valore facoltativo che specifica se le informazioni sullo stato dell'istanza vengono compresse usando l'algoritmo GZip prima che le informazioni vengano salvate nell'archivio di persistenza. Questo valore è di tipo InstanceEncodingOption. I valori possibili per questa proprietà sono None, che specifica nessuna compressione e , che specifica che i dati dell'istanza vengono compressi e GZipusano l'algoritmo gzip.
instanceLockedExceptionAction Valore che specifica l'azione che si verifica in risposta a un'eccezione generata quando l'host tenta di bloccare un'istanza al momento bloccata da un altro host. Questo valore è di tipo InstanceLockedExceptionAction.

Le opzioni consentite per questo campo sono: None, Basic Retry e Aggressive Retry. Il valore predefinito è None (Nessuna). Nell'elenco seguente sono riportate le descrizioni di queste tre opzioni:

-Nessuno. L'host del servizio non tenta di bloccare l'istanza e passa InstanceLockedException al chiamante.
- Ripetizione dei tentativi di base. L'host del servizio tenta di nuovo di bloccare l'istanza con un intervallo tra tentativi lineare e passa l'eccezione al chiamante alla fine della sequenza.
- Tentativi aggressivi. L'host del servizio tenta di nuovo di bloccare l'istanza con un ritardo che aumenta in modo esponenziale e passa InstanceLockedException al chiamante alla fine della sequenza.
runnableInstancesDetectionPeriod

Elementi figlio

Nessuno.

Elementi padre

Elemento Descrizione
<comportamento> di <serviceBehaviors> Specifica un elemento di comportamento.

Vedi anche