SqlWorkflowPersistenceService Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Attenzione
The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*
Rappresenta un servizio di persistenza che usa un database SQL per archiviare le informazioni sullo stato del flusso di lavoro.
public ref class SqlWorkflowPersistenceService : System::Workflow::Runtime::Hosting::WorkflowPersistenceService, System::Workflow::Runtime::IPendingWork
public class SqlWorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowPersistenceService, System.Workflow.Runtime.IPendingWork
[System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")]
public class SqlWorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowPersistenceService, System.Workflow.Runtime.IPendingWork
type SqlWorkflowPersistenceService = class
inherit WorkflowPersistenceService
interface IPendingWork
[<System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")>]
type SqlWorkflowPersistenceService = class
inherit WorkflowPersistenceService
interface IPendingWork
Public Class SqlWorkflowPersistenceService
Inherits WorkflowPersistenceService
Implements IPendingWork
- Ereditarietà
- Attributi
- Implementazioni
Commenti
Nota
Questo materiale illustra i tipi e gli spazi dei nomi obsoleti. Per altre informazioni, vedere tipi deprecati in Windows Workflow Foundation 4.5.
La classe SqlWorkflowPersistenceService rappresenta un servizio di persistenza completamente funzionale. È possibile usare questo servizio predefinito per rendere persistenti e recuperare informazioni sullo stato del flusso di lavoro relative a un'istanza del flusso di lavoro quando richiesto dal motore di runtime del flusso di lavoro.
Il SqlWorkflowPersistenceService partecipa alla funzionalità di invio in batch delle transazioni del flusso di lavoro fornita dal WorkflowCommitWorkBatchService. Ovvero aggiunge oggetti che rappresentano scritture in sospeso nel database SQL nel WorkBatch e implementa l'interfaccia IPendingWork.
Il SqlWorkflowPersistenceService supporta il blocco delle istanze del flusso di lavoro. Questa funzionalità viene usata quando diversi runtime del flusso di lavoro condividono lo stesso database. Una colonna nella tabella di database SQL viene usata per contrassegnare un'istanza del flusso di lavoro come bloccata ogni volta che viene usata da un runtime del flusso di lavoro. Il SqlWorkflowPersistenceService non carica un'istanza del flusso di lavoro contrassegnata come "in uso" da un altro runtime. In genere questi blocchi vengono rilasciati quando l'istanza del flusso di lavoro viene mantenuta, ad esempio in caso di inattività, completamento o terminazione. I blocchi possono anche essere rilasciati automaticamente dopo un periodo di inattività. Questo periodo di inattività può essere impostato usando il costruttore della classe SqlWorkflowPersistenceService. Può anche essere impostato tramite il file di configurazione.
Per altre informazioni sui servizi di persistenza in generale, vedere la classe WorkflowPersistenceService.
Le istanze del flusso di lavoro possono contenere timer, ad esempio, se hanno un DelayActivity. Per i flussi di lavoro che contengono timer, il SqlWorkflowPersistenceService registra l'ora in cui scade il timer successivo del flusso di lavoro. Il SqlWorkflowPersistenceService esegue periodicamente il polling del database, cercando i flussi di lavoro i cui timer sono scaduti. La frequenza dell'intervallo di polling può essere impostata usando il costruttore SqlWorkflowPersistenceService o usando un file di configurazione.
Nota
Quando si usano sia il SqlTrackingService che il SqlWorkflowPersistenceService in un'applicazione del flusso di lavoro, è consigliabile usare un singolo database per la persistenza e il rilevamento.
Costruttori
SqlWorkflowPersistenceService(NameValueCollection) |
Obsoleti.
Inizializza una nuova istanza della classe SqlWorkflowPersistenceService utilizzando i parametri specificati. |
SqlWorkflowPersistenceService(String, Boolean, TimeSpan, TimeSpan) |
Obsoleti.
Inizializza una nuova istanza della classe SqlWorkflowPersistenceService utilizzando una stringa di connessione del database e altri parametri. |
SqlWorkflowPersistenceService(String) |
Obsoleti.
Inizializza una nuova istanza della classe SqlWorkflowPersistenceService utilizzando la stringa di connessione del database. |
Proprietà
EnableRetries |
Obsoleti.
Ottiene o imposta un valore che specifica se il SqlWorkflowPersistenceService ritenta il commit di un batch di lavoro. |
LoadingInterval |
Obsoleti.
Ottiene la lunghezza dell'intervallo di caricamento. |
Runtime |
Obsoleti.
Ottiene il WorkflowRuntime per questo servizio. (Ereditato da WorkflowRuntimeService) |
ServiceInstanceId |
Obsoleti.
Ottiene l'identificatore dell'istanza del servizio. |
State |
Obsoleti.
Ottiene lo stato del WorkflowRuntimeService. (Ereditato da WorkflowRuntimeService) |
Metodi
Equals(Object) |
Obsoleti.
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetAllWorkflows() |
Obsoleti.
Recupera le descrizioni delle istanze di tutti i flussi di lavoro persistenti. |
GetHashCode() |
Obsoleti.
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Obsoleti.
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
LoadCompletedContextActivity(Guid, Activity) |
Obsoleti.
Recupera l'ambito completato specificato dal database. |
LoadExpiredTimerWorkflowIds() |
Obsoleti.
Recupera un elenco di ID per i flussi di lavoro con timer scaduti. |
LoadWorkflowInstanceState(Guid) |
Obsoleti.
Recupera lo stato dell'istanza del flusso di lavoro specificato dal database. |
MemberwiseClone() |
Obsoleti.
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
OnStarted() |
Obsoleti.
Avvia un nuovo timer e ripristina le istanze del flusso di lavoro in esecuzione. |
OnStopped() |
Obsoleti.
Quando sottoposto a override in una classe derivata, rappresenta il metodo che verrà chiamato quando il motore di runtime del flusso di lavoro genera l'evento Stopped. (Ereditato da WorkflowRuntimeService) |
RaiseServicesExceptionNotHandledEvent(Exception, Guid) |
Obsoleti.
Genera l'evento ServicesExceptionNotHandled. (Ereditato da WorkflowRuntimeService) |
SaveCompletedContextActivity(Activity) |
Obsoleti.
Salva lo stato dell'ambito completato specificato. |
SaveWorkflowInstanceState(Activity, Boolean) |
Obsoleti.
Salva lo stato dell'istanza del flusso di lavoro specificato. |
Start() |
Obsoleti.
Avvia il SqlWorkflowPersistenceService. |
Stop() |
Obsoleti.
Arresta il servizio e il timer. |
ToString() |
Obsoleti.
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
UnloadOnIdle(Activity) |
Obsoleti.
Restituisce un valore che indica se il flusso di lavoro viene scaricato quando si trova in uno stato di inattività. |
UnlockWorkflowInstanceState(Activity) |
Obsoleti.
Sblocca l'accesso allo stato dell'istanza del flusso di lavoro specificato. |
Implementazioni dell'interfaccia esplicita
IPendingWork.Commit(Transaction, ICollection) |
Obsoleti.
Scrive un ICollection di oggetti di stato serializzati nel database. |
IPendingWork.Complete(Boolean, ICollection) |
Obsoleti.
Completa il batch di lavoro e rilascia tutte le risorse. |
IPendingWork.MustCommit(ICollection) |
Obsoleti.
Restituisce un valore che indica se la raccolta di oggetti di stato serializzati deve essere scritta nel database. |