Sdílet prostřednictvím


WorkflowRuntime.CreateWorkflow Metoda

Definice

Vytvoří instanci pracovního postupu pomocí zadaných parametrů.

Přetížení

CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>, Guid)

Vytvoří instanci pracovního postupu pomocí zadaných parametrů.

CreateWorkflow(Type, Dictionary<String,Object>, Guid)

Vytvoří instanci pracovního postupu pomocí zadaných parametrů.

CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>)

Vytvoří instanci pracovního postupu pomocí zadaných XmlReader objektů a argumentů obsažených v zadaném objektu Dictionary<TKey,TValue>.

CreateWorkflow(XmlReader)

Vytvoří instanci pracovního postupu pomocí zadané XmlReaderinstance .

CreateWorkflow(Type)

Vytvoří novou instanci pracovního postupu pomocí zadaného pracovního postupu Type.

CreateWorkflow(Type, Dictionary<String,Object>)

Vytvoří instanci pracovního postupu pomocí zadaného pracovního postupu a argumentů pracovního postupu obsaženého v zadaném Dictionary<TKey,TValue>pracovním postupu Type .

Poznámky

Pokud se nespustí modul běhu pracovního postupu, CreateWorkflow metody volají StartRuntime. Podívejte se StartRuntime na seznam možných výjimek. Po vytvoření instance pracovního postupu zavolejte WorkflowInstance.Start WorkflowInstance objekt vrácený metodou CreateWorkflow , aby se zahájilo jeho spuštění.

CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>, Guid)

Vytvoří instanci pracovního postupu pomocí zadaných parametrů.

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

Parametry

workflowDefinitionReader
XmlReader

Obsahuje XmlReader definici pracovního postupu.

rulesReader
XmlReader

An XmlReader.

namedArgumentValues
Dictionary<String,Object>

A Dictionary<TKey,TValue> objekty klíčované řetězcem, který představuje argumenty pracovního postupu.

instanceId
Guid

Konkrétní Guid WorkflowInstance vytvoření.

Návraty

WorkflowInstance

Vytvořená instance pracovního postupu.

Výjimky

workflowTypeje nulový odkaz (Nothingv Visual Basic).

Poznámky

WorkflowInstance Před vytvořením se na něm provede ověření. Pokud dojde k nějakým chybám ověření, vyvolá se chyba WorkflowValidationFailedException . To funguje dobře pro jednoduché scénáře, ale v serverovém prostředí může být opětovné obnovení pracovního postupu pro každou aktivaci zbytečné režie.

Další informace o zakázání ověřování najdete v tématu ValidateOnCreate.

Pracovní postup instanceId pro všechny spuštěné pracovní postupy načtené nástrojem WorkflowRuntime musí být jedinečný. Pokud předáte instanceId vytvoření pracovního postupu a spuštěný pracovní postup už používáteinstanceId, vyvolá se vyvolá.InvalidOperationException

Příklad předání parametrů do CreateWorkflowsouboru najdete v tématu Pracovní postup s ukázkou parametrů.

Příklad použití pravidel definovaných v jazyce XML najdete v tématu IfElse s ukázkou pravidel.

Platí pro

CreateWorkflow(Type, Dictionary<String,Object>, Guid)

Vytvoří instanci pracovního postupu pomocí zadaných parametrů.

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

Parametry

workflowType
Type

Pracovní Type postup, který chcete vytvořit.

namedArgumentValues
Dictionary<String,Object>

A Dictionary<TKey,TValue> objekty klíčované řetězcem, který představuje argumenty pracovního postupu.

instanceId
Guid

Konkrétní Guid WorkflowInstance vytvoření.

Návraty

WorkflowInstance

Vytvořená instance pracovního postupu.

Výjimky

workflowTypeje nulový odkaz (Nothingv Visual Basic).

Poznámky

WorkflowInstance Před vytvořením se na něm provede ověření. Pokud dojde k nějakým chybám ověření, vyvolá se chyba WorkflowValidationFailedException . To funguje dobře pro jednoduché scénáře, ale v serverovém prostředí může být opětovné obnovení pracovního postupu pro každou aktivaci zbytečné režie.

Další informace o zakázání ověřování najdete v tématu ValidateOnCreate.

Pracovní postup instanceId pro všechny spuštěné pracovní postupy načtené nástrojem WorkflowRuntime musí být jedinečný. Pokud předáte instanceId vytvoření pracovního postupu a spuštěný pracovní postup už používáteinstanceId, vyvolá se vyvolá.InvalidOperationException

Příklad předání parametrů do CreateWorkflowsouboru najdete v tématu Pracovní postup s ukázkou parametrů.

Platí pro

CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>)

Vytvoří instanci pracovního postupu pomocí zadaných XmlReader objektů a argumentů obsažených v zadaném objektu Dictionary<TKey,TValue>.

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

Parametry

workflowDefinitionReader
XmlReader

Obsahuje XmlReader definici pracovního postupu.

rulesReader
XmlReader

An XmlReader.

namedArgumentValues
Dictionary<String,Object>

A Dictionary<TKey,TValue> objekty klíčované řetězcem, který představuje argumenty pracovního postupu.

Návraty

WorkflowInstance

Vytvořená instance pracovního postupu.

Výjimky

workflowDefinitionReaderje nulový odkaz (Nothingv Visual Basic).

Poznámky

Instance pracovního postupu se vytvoří z definice pracovního postupu, na kterou XmlReader odkazuje a argumenty zadané .namedArgumentValues

WorkflowInstance Před vytvořením se na něm provede ověření. Pokud dojde k nějakým chybám ověření, vyvolá se chyba WorkflowValidationFailedException . To funguje dobře pro jednoduché scénáře, ale v serverovém prostředí může být opětovné obnovení pracovního postupu pro každou aktivaci zbytečné režie.

Další informace o zakázání ověřování najdete v tématu ValidateOnCreate.

Příklad předání parametrů do CreateWorkflowsouboru najdete v tématu Pracovní postup s ukázkou parametrů.

Příklad použití pravidel definovaných v jazyce XML najdete v tématu IfElse s ukázkou pravidel.

Platí pro

CreateWorkflow(XmlReader)

Vytvoří instanci pracovního postupu pomocí zadané XmlReaderinstance .

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

Parametry

workflowDefinitionReader
XmlReader

Obsahuje XmlReader definici pracovního postupu.

Návraty

WorkflowInstance

Vytvořená instance pracovního postupu.

Výjimky

workflowDefinitionReaderje nulový odkaz (Nothingv Visual Basic).

Příklady

Následující příklad ukazuje, jak vytvořit pracovní postup s definicí pracovního postupu založeného na 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();  
    }  
}  

Poznámky

Instance pracovního postupu se vytvoří z definičního souboru pracovního postupu XAML, na který XmlReaderodkazuje .

WorkflowInstance Před vytvořením se na něm provede ověření. Pokud dojde k nějakým chybám ověření, vyvolá se chyba WorkflowValidationFailedException . To funguje dobře pro jednoduché scénáře, ale v serverovém prostředí může být opětovné obnovení pracovního postupu pro každou aktivaci zbytečné režie.

Další informace o zakázání ověřování najdete v tématu ValidateOnCreate.

Platí pro

CreateWorkflow(Type)

Vytvoří novou instanci pracovního postupu pomocí zadaného pracovního postupu Type.

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

Parametry

workflowType
Type

Pracovní Type postup, který chcete vytvořit.

Návraty

WorkflowInstance

Vytvořená instance pracovního postupu.

Výjimky

workflowTypeje nulový odkaz (Nothingv Visual Basic).

Příklady

Následující příklad kódu ukazuje doporučený způsob vytvoření WorkflowInstance objektu v hostiteli pracovního postupu pomocí CreateWorkflow metody.

Tento příklad kódu je součástí ukázky Zrušení pracovního postupu .

Type type = typeof(SampleWorkflow1);
WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
workflowInstance.Start();
Dim workflowInstance As WorkflowInstance
workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
workflowInstance.Start()

Poznámky

WorkflowInstance Před vytvořením se na něm provede ověření. Pokud dojde k nějakým chybám ověření, vyvolá se chyba WorkflowValidationFailedException . To funguje dobře pro jednoduché scénáře, ale v serverovém prostředí může být opětovné obnovení pracovního postupu pro každou aktivaci zbytečné režie.

Další informace o zakázání ověřování najdete v tématu ValidateOnCreate.

Platí pro

CreateWorkflow(Type, Dictionary<String,Object>)

Vytvoří instanci pracovního postupu pomocí zadaného pracovního postupu a argumentů pracovního postupu obsaženého v zadaném Dictionary<TKey,TValue>pracovním postupu Type .

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

Parametry

workflowType
Type

Pracovní Type postup, který chcete vytvořit.

namedArgumentValues
Dictionary<String,Object>

Objekty Dictionary<TKey,TValue> klíčované řetězcem, které představují argumenty pracovního postupu.

Návraty

WorkflowInstance

Vytvořená instance pracovního postupu.

Výjimky

workflowTypeje nulový odkaz (Nothingv Visual Basic).

Poznámky

WorkflowInstance Před vytvořením se na něm provede ověření. Pokud dojde k nějakým chybám ověření, vyvolá se chyba WorkflowValidationFailedException . To funguje dobře pro jednoduché scénáře, ale v serverovém prostředí může být opětovné obnovení pracovního postupu pro každou aktivaci zbytečné režie.

Další informace o zakázání ověřování najdete v tématu ValidateOnCreate.

Příklad předání parametrů do CreateWorkflowsouboru najdete v tématu Pracovní postup s ukázkou parametrů.

Platí pro