WorkflowRuntime.CreateWorkflow Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée une instance de workflow en utilisant les paramètres spécifiés.
Surcharges
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>, Guid) |
Crée une instance de workflow en utilisant les paramètres spécifiés. |
CreateWorkflow(Type, Dictionary<String,Object>, Guid) |
Crée une instance de workflow en utilisant les paramètres spécifiés. |
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>) |
Crée une instance de workflow en utilisant les objets XmlReader spécifiés et les arguments contenus dans le Dictionary<TKey,TValue> spécifié. |
CreateWorkflow(XmlReader) |
Crée une instance de workflow en utilisant le XmlReader spécifié. |
CreateWorkflow(Type) |
Crée une nouvelle instance de workflow en utilisant le workflow Type spécifié. |
CreateWorkflow(Type, Dictionary<String,Object>) |
Crée une instance de workflow en utilisant le Type de workflow spécifié et les arguments au workflow contenus dans le Dictionary<TKey,TValue> spécifié. |
Remarques
Si le moteur d'exécution de workflow n'a pas été démarré, les méthodes CreateWorkflow appellent la méthode StartRuntime. Pour obtenir la liste des exceptions possibles, consultez StartRuntime. Après avoir créé l'instance de workflow, appelez WorkflowInstance.Start à l'objet WorkflowInstance retourné par la méthode CreateWorkflow pour commencer son exécution.
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>, Guid)
Crée une instance de workflow en utilisant les paramètres spécifiés.
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
Paramètres
- namedArgumentValues
- Dictionary<String,Object>
Objet Dictionary<TKey,TValue> d'objets indexé par une chaîne qui représente les arguments passés au workflow.
- instanceId
- Guid
Guid de la WorkflowInstance spécifique à créer.
Retours
Instance de workflow créée.
Exceptions
workflowType
est une référence Null (Nothing
en Visual Basic).
Remarques
Avant que la WorkflowInstance soit créée, elle fait l'objet d'une validation. En cas d'erreurs de validation, la WorkflowValidationFailedException est levée. Cela fonctionne bien pour les scénarios simples, mais dans un environnement de serveur, la revalidation d'un workflow pour chaque activation peut s'avérer être un traitement inutile.
Pour plus d’informations sur la désactivation de la validation, consultez ValidateOnCreate.
L'instanceId
de workflow pour tous les workflows en cours chargés par le WorkflowRuntime doit être unique. Si vous passez un instanceId
pour créer un workflow et qu'un workflow en cours d'exécution utilise déjà cet instanceId
, une exception InvalidOperationException est levée.
Pour obtenir un exemple de passage de paramètres à CreateWorkflow
, consultez Workflow with Parameters Sample.
Pour obtenir un exemple d’utilisation de règles définies dans XML, consultez IfElse avec l’exemple de règles.
S’applique à
CreateWorkflow(Type, Dictionary<String,Object>, Guid)
Crée une instance de workflow en utilisant les paramètres spécifiés.
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
Paramètres
- namedArgumentValues
- Dictionary<String,Object>
Objet Dictionary<TKey,TValue> d'objets indexé par une chaîne qui représente les arguments passés au workflow.
- instanceId
- Guid
Guid de la WorkflowInstance spécifique à créer.
Retours
Instance de workflow créée.
Exceptions
workflowType
est une référence Null (Nothing
en Visual Basic).
Remarques
Avant que la WorkflowInstance soit créée, elle fait l'objet d'une validation. En cas d'erreurs de validation, la WorkflowValidationFailedException est levée. Cela fonctionne bien pour les scénarios simples, mais dans un environnement de serveur, la revalidation d'un workflow pour chaque activation peut s'avérer être un traitement inutile.
Pour plus d’informations sur la désactivation de la validation, consultez ValidateOnCreate.
L'instanceId
de workflow pour tous les workflows en cours chargés par le WorkflowRuntime doit être unique. Si vous passez un instanceId
pour créer un workflow et qu'un workflow en cours d'exécution utilise déjà cet instanceId
, une exception InvalidOperationException est levée.
Pour obtenir un exemple de passage de paramètres à CreateWorkflow
, consultez Workflow with Parameters Sample.
S’applique à
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>)
Crée une instance de workflow en utilisant les objets XmlReader spécifiés et les arguments contenus dans le Dictionary<TKey,TValue> spécifié.
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
Paramètres
- namedArgumentValues
- Dictionary<String,Object>
Objet Dictionary<TKey,TValue> d'objets indexé par une chaîne qui représente les arguments passés au workflow.
Retours
Instance de workflow créée.
Exceptions
workflowDefinitionReader
est une référence Null (Nothing
en Visual Basic).
WorkflowRuntime est supprimé.
Remarques
L’instance de workflow est créée à partir de la définition de workflow référencée par le XmlReader et les arguments fournis par namedArgumentValues
.
Avant que la WorkflowInstance soit créée, elle fait l'objet d'une validation. En cas d'erreurs de validation, la WorkflowValidationFailedException est levée. Cela fonctionne bien pour les scénarios simples, mais dans un environnement de serveur, la revalidation d'un workflow pour chaque activation peut s'avérer être un traitement inutile.
Pour plus d’informations sur la désactivation de la validation, consultez ValidateOnCreate.
Pour obtenir un exemple de passage de paramètres à CreateWorkflow
, consultez Workflow with Parameters Sample.
Pour obtenir un exemple d’utilisation de règles définies dans XML, consultez IfElse avec l’exemple de règles.
S’applique à
CreateWorkflow(XmlReader)
Crée une instance de workflow en utilisant le XmlReader spécifié.
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
Paramètres
Retours
Instance de workflow créée.
Exceptions
workflowDefinitionReader
est une référence Null (Nothing
en Visual Basic).
WorkflowRuntime est supprimé.
Exemples
L'exemple suivant montre comment créer un workflow avec une définition de workflow basée sur 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();
}
}
Remarques
L'instance de workflow est créée à partir d'un fichier de définition du workflow XAML référencé par le XmlReader.
Avant que la WorkflowInstance soit créée, elle fait l'objet d'une validation. En cas d'erreurs de validation, la WorkflowValidationFailedException est levée. Cela fonctionne bien pour les scénarios simples, mais dans un environnement de serveur, la revalidation d'un workflow pour chaque activation peut s'avérer être un traitement inutile.
Pour plus d’informations sur la désactivation de la validation, consultez ValidateOnCreate.
S’applique à
CreateWorkflow(Type)
Crée une nouvelle instance de workflow en utilisant le workflow Type spécifié.
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
Paramètres
Retours
Instance de workflow créée.
Exceptions
workflowType
est une référence Null (Nothing
en Visual Basic).
Exemples
L'exemple de code suivant montre la méthode recommandée pour créer un objet WorkflowInstance dans un hôte de workflow à l'aide de la méthode CreateWorkflow.
Cet exemple de code fait partie de l’exemple d’annulation d’un flux de travail .
Type type = typeof(SampleWorkflow1);
WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
workflowInstance.Start();
Dim workflowInstance As WorkflowInstance
workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
workflowInstance.Start()
Remarques
Avant que la WorkflowInstance soit créée, elle fait l'objet d'une validation. En cas d'erreurs de validation, la WorkflowValidationFailedException est levée. Cela fonctionne bien pour les scénarios simples, mais dans un environnement de serveur, la revalidation d'un workflow pour chaque activation peut s'avérer être un traitement inutile.
Pour plus d’informations sur la désactivation de la validation, consultez ValidateOnCreate.
S’applique à
CreateWorkflow(Type, Dictionary<String,Object>)
Crée une instance de workflow en utilisant le Type de workflow spécifié et les arguments au workflow contenus dans le Dictionary<TKey,TValue> spécifié.
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
Paramètres
- namedArgumentValues
- Dictionary<String,Object>
Objet Dictionary<TKey,TValue> d'objets indexé par une chaîne qui représente les arguments passés au workflow.
Retours
Instance de workflow créée.
Exceptions
workflowType
est une référence Null (Nothing
en Visual Basic).
Remarques
Avant que la WorkflowInstance soit créée, elle fait l'objet d'une validation. En cas d'erreurs de validation, la WorkflowValidationFailedException est levée. Cela fonctionne bien pour les scénarios simples, mais dans un environnement de serveur, la revalidation d'un workflow pour chaque activation peut s'avérer être un traitement inutile.
Pour plus d’informations sur la désactivation de la validation, consultez ValidateOnCreate.
Pour obtenir un exemple de passage de paramètres à CreateWorkflow
, consultez Workflow with Parameters Sample.