WorkflowRuntime.CreateWorkflow Metodo
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.
Crea un'istanza di flusso di lavoro utilizzando i parametri specificati.
Overload
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>, Guid) |
Crea un'istanza di flusso di lavoro utilizzando i parametri specificati. |
CreateWorkflow(Type, Dictionary<String,Object>, Guid) |
Crea un'istanza di flusso di lavoro utilizzando i parametri specificati. |
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>) |
Crea un'istanza del flusso di lavoro utilizzando gli oggetti XmlReader specificati e gli argomenti contenuti nell'oggetto Dictionary<TKey,TValue> specificato. |
CreateWorkflow(XmlReader) |
Crea un'istanza del flusso di lavoro tramite l'elemento XmlReader specificato. |
CreateWorkflow(Type) |
Crea una nuova istanza del flusso di lavoro utilizzando l'oggetto Type del flusso di lavoro specificato. |
CreateWorkflow(Type, Dictionary<String,Object>) |
Crea un'istanza del flusso di lavoro utilizzando il flusso di lavoro Type e gli elementi per il flusso di lavoro contenuto nell'oggetto Dictionary<TKey,TValue> specificato. |
Commenti
Se il motore di runtime del flusso di lavoro non è stato avviato, i metodi CreateWorkflow chiamano StartRuntime. Per un elenco delle possibili eccezioni, vedere StartRuntime. Dopo avere creato l'istanza del flusso di lavoro, chiamare WorkflowInstance.Start sull'oggetto WorkflowInstance restituito dal metodo CreateWorkflow per iniziare l'esecuzione.
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>, Guid)
Crea un'istanza di flusso di lavoro utilizzando i parametri specificati.
public:
System::Workflow::Runtime::WorkflowInstance ^ CreateWorkflow(System::Xml::XmlReader ^ workflowDefinitionReader, System::Xml::XmlReader ^ rulesReader, System::Collections::Generic::Dictionary<System::String ^, System::Object ^> ^ namedArgumentValues, Guid instanceId);
public System.Workflow.Runtime.WorkflowInstance CreateWorkflow (System.Xml.XmlReader workflowDefinitionReader, System.Xml.XmlReader rulesReader, System.Collections.Generic.Dictionary<string,object> namedArgumentValues, Guid instanceId);
member this.CreateWorkflow : System.Xml.XmlReader * System.Xml.XmlReader * System.Collections.Generic.Dictionary<string, obj> * Guid -> System.Workflow.Runtime.WorkflowInstance
Public Function CreateWorkflow (workflowDefinitionReader As XmlReader, rulesReader As XmlReader, namedArgumentValues As Dictionary(Of String, Object), instanceId As Guid) As WorkflowInstance
Parametri
- namedArgumentValues
- Dictionary<String,Object>
Dictionary<TKey,TValue> di oggetti con chiave impostata da una stringa che rappresenta gli argomenti per il flusso di lavoro.
- instanceId
- Guid
Guid della classe WorkflowInstance specifica da creare.
Restituisce
Istanza del flusso di lavoro creata.
Eccezioni
workflowType
è un riferimento null (Nothing
in Visual Basic).
Commenti
Prima di essere creato, l'oggetto della classe WorkflowInstance viene convalidato. Se si verificano errori di convalida, viene generata la classe WorkflowValidationFailedException. Questa procedura si rivela adeguata per scenari semplici. Tuttavia, in un ambiente server, la riconvalida di un flusso di lavoro a ogni attivazione può comportare un sovraccarico non necessario.
Per altre informazioni sulla disabilitazione della convalida, vedere ValidateOnCreate.
Il flusso di lavoro instanceId
per qualsiasi flusso di lavoro in esecuzione caricato da WorkflowRuntime deve essere univoco. Se si passa un instanceId
per creare un flusso di lavoro e un flusso di lavoro in esecuzione sta già utilizzando quel instanceId
, viene generata un'eccezione InvalidOperationException.
Per un esempio di passaggio di parametri a CreateWorkflow
, vedere Flusso di lavoro con l'esempio di parametri.
Per un esempio di uso delle regole definite in XML, vedere IfElse with Rules Sample.
Si applica a
CreateWorkflow(Type, Dictionary<String,Object>, Guid)
Crea un'istanza di flusso di lavoro utilizzando i parametri specificati.
public:
System::Workflow::Runtime::WorkflowInstance ^ CreateWorkflow(Type ^ workflowType, System::Collections::Generic::Dictionary<System::String ^, System::Object ^> ^ namedArgumentValues, Guid instanceId);
public System.Workflow.Runtime.WorkflowInstance CreateWorkflow (Type workflowType, System.Collections.Generic.Dictionary<string,object> namedArgumentValues, Guid instanceId);
member this.CreateWorkflow : Type * System.Collections.Generic.Dictionary<string, obj> * Guid -> System.Workflow.Runtime.WorkflowInstance
Public Function CreateWorkflow (workflowType As Type, namedArgumentValues As Dictionary(Of String, Object), instanceId As Guid) As WorkflowInstance
Parametri
- namedArgumentValues
- Dictionary<String,Object>
Dictionary<TKey,TValue> di oggetti con chiave impostata da una stringa che rappresenta gli argomenti per il flusso di lavoro.
- instanceId
- Guid
Guid della classe WorkflowInstance specifica da creare.
Restituisce
Istanza del flusso di lavoro creata.
Eccezioni
workflowType
è un riferimento null (Nothing
in Visual Basic).
Commenti
Prima di essere creato, l'oggetto della classe WorkflowInstance viene convalidato. Se si verificano errori di convalida, viene generata la classe WorkflowValidationFailedException. Questa procedura si rivela adeguata per scenari semplici. Tuttavia, in un ambiente server, la riconvalida di un flusso di lavoro a ogni attivazione può comportare un sovraccarico non necessario.
Per altre informazioni sulla disabilitazione della convalida, vedere ValidateOnCreate.
Il flusso di lavoro instanceId
per qualsiasi flusso di lavoro in esecuzione caricato da WorkflowRuntime deve essere univoco. Se si passa un instanceId
per creare un flusso di lavoro e un flusso di lavoro in esecuzione sta già utilizzando quel instanceId
, viene generata un'eccezione InvalidOperationException.
Per un esempio di passaggio di parametri a CreateWorkflow
, vedere Flusso di lavoro con l'esempio di parametri.
Si applica a
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>)
Crea un'istanza del flusso di lavoro utilizzando gli oggetti XmlReader specificati e gli argomenti contenuti nell'oggetto Dictionary<TKey,TValue> specificato.
public:
System::Workflow::Runtime::WorkflowInstance ^ CreateWorkflow(System::Xml::XmlReader ^ workflowDefinitionReader, System::Xml::XmlReader ^ rulesReader, System::Collections::Generic::Dictionary<System::String ^, System::Object ^> ^ namedArgumentValues);
public System.Workflow.Runtime.WorkflowInstance CreateWorkflow (System.Xml.XmlReader workflowDefinitionReader, System.Xml.XmlReader rulesReader, System.Collections.Generic.Dictionary<string,object> namedArgumentValues);
member this.CreateWorkflow : System.Xml.XmlReader * System.Xml.XmlReader * System.Collections.Generic.Dictionary<string, obj> -> System.Workflow.Runtime.WorkflowInstance
Public Function CreateWorkflow (workflowDefinitionReader As XmlReader, rulesReader As XmlReader, namedArgumentValues As Dictionary(Of String, Object)) As WorkflowInstance
Parametri
- namedArgumentValues
- Dictionary<String,Object>
Dictionary<TKey,TValue> di oggetti con chiave impostata da una stringa che rappresenta gli argomenti per il flusso di lavoro.
Restituisce
Istanza del flusso di lavoro creata.
Eccezioni
workflowDefinitionReader
è un riferimento null (Nothing
in Visual Basic).
WorkflowRuntime viene eliminato.
Commenti
L'istanza del flusso di lavoro viene creata dal file di definizione del flusso di lavoro al quale fa riferimento la classe XmlReader e gli argomenti forniti da namedArgumentValues
.
Prima di essere creato, l'oggetto della classe WorkflowInstance viene convalidato. Se si verificano errori di convalida, viene generata la classe WorkflowValidationFailedException. Questa procedura si rivela adeguata per scenari semplici. Tuttavia, in un ambiente server, la riconvalida di un flusso di lavoro a ogni attivazione può comportare un sovraccarico non necessario.
Per altre informazioni sulla disabilitazione della convalida, vedere ValidateOnCreate.
Per un esempio di passaggio di parametri a CreateWorkflow
, vedere Flusso di lavoro con l'esempio di parametri.
Per un esempio di uso delle regole definite in XML, vedere IfElse with Rules Sample.
Si applica a
CreateWorkflow(XmlReader)
Crea un'istanza del flusso di lavoro tramite l'elemento XmlReader specificato.
public:
System::Workflow::Runtime::WorkflowInstance ^ CreateWorkflow(System::Xml::XmlReader ^ workflowDefinitionReader);
public System.Workflow.Runtime.WorkflowInstance CreateWorkflow (System.Xml.XmlReader workflowDefinitionReader);
member this.CreateWorkflow : System.Xml.XmlReader -> System.Workflow.Runtime.WorkflowInstance
Public Function CreateWorkflow (workflowDefinitionReader As XmlReader) As WorkflowInstance
Parametri
Restituisce
Istanza del flusso di lavoro creata.
Eccezioni
workflowDefinitionReader
è un riferimento null (Nothing
in Visual Basic).
WorkflowRuntime viene eliminato.
Esempio
Nell'esempio seguente viene illustrato come creare un flusso di lavoro in base a una definizione del flusso di lavoro XAML.
static void Main(string[] args)
{
using (WorkflowRuntime workflowRuntime = new WorkflowRuntime())
{
AutoResetEvent waitHandle = new AutoResetEvent(false);
workflowRuntime.WorkflowCompleted += delegate(object sender, WorkflowCompletedEventArgs e)
{
waitHandle.Set();
};
workflowRuntime.WorkflowTerminated += delegate(object sender, WorkflowTerminatedEventArgs e)
{
Console.WriteLine(e.Exception.Message);
waitHandle.Set();
};
TypeProvider typeProvider = new TypeProvider(null);
// Add referenced assemblies, if needed
// typeProvider.AddAssembly(...);
workflowRuntime.AddService(typeProvider);
using (XmlReader reader = XmlReader.Create("Workflow1.xoml"))
{
WorkflowInstance instance = workflowRuntime.CreateWorkflow(reader);
instance.Start();
}
waitHandle.WaitOne();
}
}
Commenti
L'istanza del flusso di lavoro viene creata da un file di definizione del flusso di lavoro XAML al quale fa riferimento la classe XmlReader.
Prima di essere creato, l'oggetto della classe WorkflowInstance viene convalidato. Se si verificano errori di convalida, viene generata la classe WorkflowValidationFailedException. Questa procedura si rivela adeguata per scenari semplici. Tuttavia, in un ambiente server, la riconvalida di un flusso di lavoro a ogni attivazione può comportare un sovraccarico non necessario.
Per altre informazioni sulla disabilitazione della convalida, vedere ValidateOnCreate.
Si applica a
CreateWorkflow(Type)
Crea una nuova istanza del flusso di lavoro utilizzando l'oggetto Type del flusso di lavoro specificato.
public:
System::Workflow::Runtime::WorkflowInstance ^ CreateWorkflow(Type ^ workflowType);
public System.Workflow.Runtime.WorkflowInstance CreateWorkflow (Type workflowType);
member this.CreateWorkflow : Type -> System.Workflow.Runtime.WorkflowInstance
Public Function CreateWorkflow (workflowType As Type) As WorkflowInstance
Parametri
Restituisce
Istanza del flusso di lavoro creata.
Eccezioni
workflowType
è un riferimento null (Nothing
in Visual Basic).
Esempio
Nell'esempio di codice seguente viene illustrata la procedura consigliata per creare un oggetto WorkflowInstance in un host del flusso di lavoro utilizzando il metodo CreateWorkflow.
Questo esempio di codice fa parte dell'esempio Di annullamento di un flusso di lavoro .
Type type = typeof(SampleWorkflow1);
WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
workflowInstance.Start();
Dim workflowInstance As WorkflowInstance
workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
workflowInstance.Start()
Commenti
Prima di essere creato, l'oggetto della classe WorkflowInstance viene convalidato. Se si verificano errori di convalida, viene generata la classe WorkflowValidationFailedException. Questa procedura si rivela adeguata per scenari semplici. Tuttavia, in un ambiente server, la riconvalida di un flusso di lavoro a ogni attivazione può comportare un sovraccarico non necessario.
Per altre informazioni sulla disabilitazione della convalida, vedere ValidateOnCreate.
Si applica a
CreateWorkflow(Type, Dictionary<String,Object>)
Crea un'istanza del flusso di lavoro utilizzando il flusso di lavoro Type e gli elementi per il flusso di lavoro contenuto nell'oggetto Dictionary<TKey,TValue> specificato.
public:
System::Workflow::Runtime::WorkflowInstance ^ CreateWorkflow(Type ^ workflowType, System::Collections::Generic::Dictionary<System::String ^, System::Object ^> ^ namedArgumentValues);
public System.Workflow.Runtime.WorkflowInstance CreateWorkflow (Type workflowType, System.Collections.Generic.Dictionary<string,object> namedArgumentValues);
member this.CreateWorkflow : Type * System.Collections.Generic.Dictionary<string, obj> -> System.Workflow.Runtime.WorkflowInstance
Public Function CreateWorkflow (workflowType As Type, namedArgumentValues As Dictionary(Of String, Object)) As WorkflowInstance
Parametri
- namedArgumentValues
- Dictionary<String,Object>
Dictionary<TKey,TValue> di oggetti con chiave impostata da una stringa che rappresenta gli argomenti per il flusso di lavoro.
Restituisce
Istanza del flusso di lavoro creata.
Eccezioni
workflowType
è un riferimento null (Nothing
in Visual Basic).
Commenti
Prima di essere creato, l'oggetto della classe WorkflowInstance viene convalidato. Se si verificano errori di convalida, viene generata la classe WorkflowValidationFailedException. Questa procedura si rivela adeguata per scenari semplici. Tuttavia, in un ambiente server, la riconvalida di un flusso di lavoro a ogni attivazione può comportare un sovraccarico non necessario.
Per altre informazioni sulla disabilitazione della convalida, vedere ValidateOnCreate.
Per un esempio di passaggio di parametri a CreateWorkflow
, vedere Flusso di lavoro con l'esempio di parametri.