WorkflowRuntime Costruttori
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.
Inizializza una nuova istanza della classe WorkflowRuntime.
Overload
WorkflowRuntime() |
Inizializza una nuova istanza della classe WorkflowRuntime. |
WorkflowRuntime(String) |
Inizializza una nuova istanza della classe WorkflowRuntime tramite la sezione specificata del file di configurazione dell'applicazione. |
WorkflowRuntime(WorkflowRuntimeSection) |
Inizializza una nuova istanza della classe WorkflowRuntime utilizzando le impostazioni nella classe WorkflowRuntimeSection specificata. |
WorkflowRuntime()
Inizializza una nuova istanza della classe WorkflowRuntime.
public:
WorkflowRuntime();
public WorkflowRuntime ();
Public Sub New ()
Esempio
Nell'esempio di codice seguente viene illustrato come utilizzare una funzionalità WorkflowRuntime da un host del flusso di lavoro. Fornisce un esempio di come utilizzare il costruttore WorkflowRuntime per creare un'istanza di WorkflowRuntime e accedere ai relativi metodi ed eventi.
Questo esempio di codice fa parte dell'esempio Di annullamento di un flusso di lavoro .
static void Main()
{
string connectionString = "Initial Catalog=SqlPersistenceService;Data Source=localhost;Integrated Security=SSPI;";
using (WorkflowRuntime workflowRuntime = new WorkflowRuntime())
{
ExternalDataExchangeService dataService = new ExternalDataExchangeService();
workflowRuntime.AddService(dataService);
dataService.AddService(expenseService);
workflowRuntime.AddService(new SqlWorkflowPersistenceService(connectionString));
workflowRuntime.StartRuntime();
workflowRuntime.WorkflowCompleted += OnWorkflowCompleted;
workflowRuntime.WorkflowTerminated += OnWorkflowTerminated;
workflowRuntime.WorkflowIdled += OnWorkflowIdled;
workflowRuntime.WorkflowAborted += OnWorkflowAborted;
Type type = typeof(SampleWorkflow1);
WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
workflowInstance.Start();
waitHandle.WaitOne();
workflowRuntime.StopRuntime();
}
}
Shared Sub Main()
Dim connectionString As String = "Initial Catalog=SqlPersistenceService;Data Source=localhost;Integrated Security=SSPI;"
Using workflowRuntime As New WorkflowRuntime()
Dim dataService As New ExternalDataExchangeService()
workflowRuntime.AddService(dataService)
dataService.AddService(expenseService)
workflowRuntime.AddService(New SqlWorkflowPersistenceService(connectionString))
AddHandler workflowRuntime.WorkflowCompleted, AddressOf OnWorkflowCompleted
AddHandler workflowRuntime.WorkflowTerminated, AddressOf OnWorkflowTerminated
AddHandler workflowRuntime.WorkflowIdled, AddressOf OnWorkflowIdled
AddHandler workflowRuntime.WorkflowAborted, AddressOf OnWorkflowAborted
Dim workflowInstance As WorkflowInstance
workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
workflowInstance.Start()
waitHandle.WaitOne()
workflowRuntime.StopRuntime()
End Using
End Sub
Commenti
WorkflowRuntime viene inizializzato con i valori predefiniti delle proprietà e contiene i servizi di base predefiniti. Per configurare anche il motore di runtime del flusso di lavoro, è possibile aggiungere e rimuovere i servizi utilizzando AddService e RemoveService, ed è possibile impostare Name. Dopo aver configurato WorkflowRuntime, chiamare StartRuntime per avviare il motore di runtime del flusso di lavoro e i relativi servizi.
Nella tabella seguente vengono illustrati i valori iniziali delle proprietà di un'istanza della classe WorkflowRuntime.
Proprietà | Valore iniziale |
---|---|
Name | "WorkflowRuntime" |
IsStarted | false |
I servizi di base predefiniti sono: DefaultWorkflowCommitWorkBatchService e DefaultWorkflowSchedulerService.
Si applica a
WorkflowRuntime(String)
Inizializza una nuova istanza della classe WorkflowRuntime tramite la sezione specificata del file di configurazione dell'applicazione.
public:
WorkflowRuntime(System::String ^ configSectionName);
public WorkflowRuntime (string configSectionName);
new System.Workflow.Runtime.WorkflowRuntime : string -> System.Workflow.Runtime.WorkflowRuntime
Public Sub New (configSectionName As String)
Parametri
- configSectionName
- String
Nome di una sezione workflowSettings
valida nel file di configurazione dell'applicazione.
Eccezioni
configSectionName
è un riferimento null (Nothing
in Visual Basic).
Impossibile trovare una sezione workflowSettings
valida nel file di configurazione dell'applicazione.
Esiste già una classe WorkflowRuntime per questo dominio dell'applicazione.
Commenti
WorkflowRuntime viene inizializzata in base alle impostazioni nella sezione specificata da configSectionName
nel file di configurazione dell'applicazione. configSectionName
deve corrispondere a una sezione valida workflowSettings
di un file di configurazione.
Quando il motore di runtime del flusso di lavoro viene configurato usando un file di configurazione dell'applicazione, carica e crea un'istanza delle classi dei tipi elencati nella Services
sezione del file di configurazione. Quando il motore di runtime del flusso di lavoro costruisce queste classi, cerca costruttori di classi con le firme seguenti nell'ordine seguente:
Servizio (runtime di WorkflowRuntime, parametri NameValueCollection)
Servizio (runtime di WorkflowRuntime)
Servizio (parametri NameValueCollection)
Servizio()
Tutte le classi del servizio caricate da un file di configurazione devono implementare almeno una di queste firme del costruttore.
Per altre informazioni, vedere WorkflowRuntimeSection.
Si applica a
WorkflowRuntime(WorkflowRuntimeSection)
Inizializza una nuova istanza della classe WorkflowRuntime utilizzando le impostazioni nella classe WorkflowRuntimeSection specificata.
public:
WorkflowRuntime(System::Workflow::Runtime::Configuration::WorkflowRuntimeSection ^ settings);
public WorkflowRuntime (System.Workflow.Runtime.Configuration.WorkflowRuntimeSection settings);
new System.Workflow.Runtime.WorkflowRuntime : System.Workflow.Runtime.Configuration.WorkflowRuntimeSection -> System.Workflow.Runtime.WorkflowRuntime
Public Sub New (settings As WorkflowRuntimeSection)
Parametri
- settings
- WorkflowRuntimeSection
Oggetto WorkflowRuntimeSection.
Eccezioni
settings
è un riferimento null (Nothing
in Visual Basic).
Esiste già una classe WorkflowRuntime per questo dominio dell'applicazione.
Commenti
Questo costruttore fornisce un meccanismo per configurare il motore di runtime del flusso di lavoro utilizzando una sola chiamata al metodo per gli host che non utilizzano un file di configurazione dell'applicazione. La scelta di non utilizzare il file di configurazione dell'applicazione può essere dovuta a numerosi fattori. Un host può essere in esecuzione in un ambiente che non consente l'utilizzo dei file di configurazione; ad esempio, in ambienti attendibili che non consentono la lettura dal file di configurazione dell'applicazione per ragioni di sicurezza. In altri casi, è possibile che un host utilizzi un meccanismo di configurazione proprietario; ad esempio, l'host può archiviare le impostazioni di configurazione del motore di runtime del flusso di lavoro in un database SQL.
Il motore di runtime del flusso di lavoro carica e crea un'istanza delle classi dei tipi contenute in WorkflowRuntimeSection.Services. Quando il motore di runtime del flusso di lavoro costruisce queste classi, cerca costruttori di classi con le firme seguenti nell'ordine seguente:
Servizio (runtime di WorkflowRuntime, parametri NameValueCollection)
Servizio (runtime di WorkflowRuntime)
Servizio (parametri NameValueCollection)
Servizio()
Tutte le classi di servizi specificate in settings
devono implementare almeno una delle firme del costruttore seguenti.