WorkflowRuntime.CreateWorkflow WorkflowRuntime.CreateWorkflow WorkflowRuntime.CreateWorkflow WorkflowRuntime.CreateWorkflow Method

정의

지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified parameters.

오버로드

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

지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified parameters.

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

지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified parameters.

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

지정된 XmlReader 개체 및 지정된 Dictionary<TKey,TValue>에 포함된 인수를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified XmlReader objects and the arguments contained in the specified Dictionary<TKey,TValue>.

CreateWorkflow(XmlReader) CreateWorkflow(XmlReader) CreateWorkflow(XmlReader) CreateWorkflow(XmlReader)

지정된 XmlReader를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified XmlReader.

CreateWorkflow(Type) CreateWorkflow(Type) CreateWorkflow(Type) CreateWorkflow(Type)

지정된 워크플로 Type을 사용하여 새 워크플로 인스턴스를 만듭니다.Creates a new workflow instance by using the specified workflow Type.

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

지정된 워크플로 Type 및 지정된 Dictionary<TKey,TValue>에 포함된 워크플로에 대한 인수를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified workflow Type and the arguments to the workflow contained in the specified Dictionary<TKey,TValue>.

설명

워크플로 런타임 엔진이 시작되지 않은 경우 CreateWorkflow 메서드는 StartRuntime을 호출합니다.If the workflow run-time engine has not been started, the CreateWorkflow methods call StartRuntime. 가능한 예외 목록은 StartRuntime을 참조하십시오.See StartRuntime for a list of possible exceptions. 워크플로 인스턴스를 만든 후 WorkflowInstance.Start 메서드가 반환하는 WorkflowInstance 개체에서 CreateWorkflow를 호출하여 실행을 시작합니다.After you create the workflow instance, call WorkflowInstance.Start on the WorkflowInstance object returned by the CreateWorkflow method to begin its execution.

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

지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified parameters.

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

매개 변수

workflowDefinitionReader
XmlReader XmlReader XmlReader XmlReader

워크플로 정의를 포함하는 XmlReader입니다.An XmlReader that contains the workflow definition.

namedArgumentValues
Dictionary<String,Object>

워크플로에 대한 인수를 나타내는 문자열로 키가 지정된 개체의 Dictionary<TKey,TValue>입니다.A Dictionary<TKey,TValue> of objects keyed by a string that represents the arguments to the workflow.

instanceId
Guid Guid Guid Guid

만들 특정 GuidWorkflowInstance입니다.The Guid of the specific WorkflowInstance to create.

반환

만들어진 워크플로 인스턴스입니다.The created workflow instance.

예외

workflowType이 null 참조(Visual Basic의 경우 Nothing)인 경우workflowType is a null reference (Nothing in Visual Basic).

설명

WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다.Before the WorkflowInstance is created, validation is executed on it. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다.If any validation errors occur, the WorkflowValidationFailedException is thrown. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.This works well for simple scenarios, but in a server environment, revalidating a workflow for every activation might be unnecessary overhead.

유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.For more information about disabling validation, see ValidateOnCreate.

instanceId이 로드한 모든 실행 중인 워크플로의 워크플로 WorkflowRuntime는 고유해야 합니다.The workflow instanceId for any running workflows loaded by the WorkflowRuntime must be unique. instanceId를 전달하여 워크플로를 만드는 경우 실행 중인 워크플로에서 이미 해당 instanceId를 사용 중이면 InvalidOperationException이 throw됩니다.If you pass an instanceId to create a workflow and a running workflow is already using that instanceId, an InvalidOperationException is thrown.

매개 변수를 전달의 예로 CreateWorkflow를 참조 하세요 Workflow with Parameters 샘플합니다.For an example of passing in parameters to CreateWorkflow, see Workflow with Parameters Sample.

XML에 정의 된 규칙을 사용 하 여 예제를 보려면 IfElse with Rules 샘플합니다.For an example of using rules defined in XML, see IfElse with Rules Sample.

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

지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified parameters.

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

매개 변수

workflowType
Type Type Type Type

만들 워크플로의 Type입니다.The Type of the workflow to create.

namedArgumentValues
Dictionary<String,Object>

워크플로에 대한 인수를 나타내는 문자열로 키가 지정된 개체의 Dictionary<TKey,TValue>입니다.A Dictionary<TKey,TValue> of objects keyed by a string that represents the arguments to the workflow.

instanceId
Guid Guid Guid Guid

만들 특정 GuidWorkflowInstance입니다.The Guid of the specific WorkflowInstance to create.

반환

만들어진 워크플로 인스턴스입니다.The created workflow instance.

예외

workflowType이 null 참조(Visual Basic의 경우 Nothing)인 경우workflowType is a null reference (Nothing in Visual Basic).

설명

WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다.Before the WorkflowInstance is created, validation is executed on it. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다.If any validation errors occur, the WorkflowValidationFailedException is thrown. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.This works well for simple scenarios, but in a server environment, revalidating a workflow for every activation might be unnecessary overhead.

유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.For more information about disabling validation, see ValidateOnCreate.

instanceId이 로드한 모든 실행 중인 워크플로의 워크플로 WorkflowRuntime는 고유해야 합니다.The workflow instanceId for any running workflows loaded by the WorkflowRuntime must be unique. instanceId를 전달하여 워크플로를 만드는 경우 실행 중인 워크플로에서 이미 해당 instanceId를 사용 중이면 InvalidOperationException이 throw됩니다.If you pass an instanceId to create a workflow and a running workflow is already using that instanceId, an InvalidOperationException is thrown.

매개 변수를 전달의 예로 CreateWorkflow를 참조 하세요 Workflow with Parameters 샘플합니다.For an example of passing in parameters to CreateWorkflow, see Workflow with Parameters Sample.

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

지정된 XmlReader 개체 및 지정된 Dictionary<TKey,TValue>에 포함된 인수를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified XmlReader objects and the arguments contained in the specified 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

매개 변수

workflowDefinitionReader
XmlReader XmlReader XmlReader XmlReader

워크플로 정의를 포함하는 XmlReader입니다.An XmlReader that contains the workflow definition.

namedArgumentValues
Dictionary<String,Object>

워크플로에 대한 인수를 나타내는 문자열로 키가 지정된 개체의 Dictionary<TKey,TValue>입니다.A Dictionary<TKey,TValue> of objects keyed by a string that represents the arguments to the workflow.

반환

만들어진 워크플로 인스턴스입니다.The created workflow instance.

예외

workflowDefinitionReader이 null 참조(Visual Basic의 경우 Nothing)인 경우workflowDefinitionReader is a null reference (Nothing in Visual Basic).

설명

워크플로 인스턴스는 XmlReader가 참조하는 워크플로 및 namedArgumentValues가 제공하는 인수에서 만들어집니다.The workflow instance is created from the workflow definition referenced by the XmlReader and the arguments supplied by namedArgumentValues.

WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다.Before the WorkflowInstance is created, validation is executed on it. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다.If any validation errors occur, the WorkflowValidationFailedException is thrown. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.This works well for simple scenarios, but in a server environment, revalidating a workflow for every activation might be unnecessary overhead.

유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.For more information about disabling validation, see ValidateOnCreate.

매개 변수를 전달의 예로 CreateWorkflow를 참조 하세요 Workflow with Parameters 샘플합니다.For an example of passing in parameters to CreateWorkflow, see Workflow with Parameters Sample.

XML에 정의 된 규칙을 사용 하 여 예제를 보려면 IfElse with Rules 샘플합니다.For an example of using rules defined in XML, see IfElse with Rules Sample.

CreateWorkflow(XmlReader) CreateWorkflow(XmlReader) CreateWorkflow(XmlReader) CreateWorkflow(XmlReader)

지정된 XmlReader를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified XmlReader.

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

매개 변수

workflowDefinitionReader
XmlReader XmlReader XmlReader XmlReader

워크플로 정의를 포함하는 XmlReader입니다.An XmlReader that contains the workflow definition.

반환

만들어진 워크플로 인스턴스입니다.The created workflow instance.

예외

workflowDefinitionReader이 null 참조(Visual Basic의 경우 Nothing)인 경우workflowDefinitionReader is a null reference (Nothing in Visual Basic).

예제

다음 예제에서는 XAML 기반 워크플로 정의가 지정된 워크플로를 만드는 방법을 보여 줍니다.The following example demonstrates how to create a workflow given a XAML-based workflow definition.

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();  
    }  
}  

설명

워크플로 인스턴스는 XmlReader가 참조하는 XAML 워크플로 정의 파일에서 만들어집니다.The workflow instance is created from a XAML workflow definition file referenced by the XmlReader.

WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다.Before the WorkflowInstance is created, validation is executed on it. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다.If any validation errors occur, the WorkflowValidationFailedException is thrown. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.This works well for simple scenarios, but in a server environment, revalidating a workflow for every activation might be unnecessary overhead.

유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.For more information about disabling validation, see ValidateOnCreate.

CreateWorkflow(Type) CreateWorkflow(Type) CreateWorkflow(Type) CreateWorkflow(Type)

지정된 워크플로 Type을 사용하여 새 워크플로 인스턴스를 만듭니다.Creates a new workflow instance by using the specified workflow 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

매개 변수

workflowType
Type Type Type Type

만들 워크플로의 Type입니다.The Type of the workflow to create.

반환

만들어진 워크플로 인스턴스입니다.The created workflow instance.

예외

workflowType이 null 참조(Visual Basic의 경우 Nothing)인 경우workflowType is a null reference (Nothing in Visual Basic).

예제

다음 코드 예제에서는 WorkflowInstance 메서드를 사용하여 워크플로 호스트에 CreateWorkflow 개체를 만드는 권장 방법을 보여 줍니다.The following code example demonstrates the recommended way to create a WorkflowInstance object in a workflow host using the CreateWorkflow method.

일부인이 코드 예제는 워크플로 취소 하면 샘플입니다.This code example is part of the Canceling a Workflow sample.

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

설명

WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다.Before the WorkflowInstance is created, validation is executed on it. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다.If any validation errors occur, the WorkflowValidationFailedException is thrown. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.This works well for simple scenarios, but in a server environment, revalidating a workflow for every activation might be unnecessary overhead.

유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.For more information about disabling validation, see ValidateOnCreate.

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

지정된 워크플로 Type 및 지정된 Dictionary<TKey,TValue>에 포함된 워크플로에 대한 인수를 사용하여 워크플로 인스턴스를 만듭니다.Creates a workflow instance by using the specified workflow Type and the arguments to the workflow contained in the specified Dictionary<TKey,TValue>.

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

매개 변수

workflowType
Type Type Type Type

만들 워크플로의 Type입니다.The Type of the workflow to create.

namedArgumentValues
Dictionary<String,Object>

워크플로에 대한 인수를 나타내는 문자열로 키가 지정된 개체의 Dictionary<TKey,TValue>입니다.A Dictionary<TKey,TValue> of objects keyed by string that represents the arguments to the workflow.

반환

만들어진 워크플로 인스턴스입니다.The created workflow instance.

예외

workflowType이 null 참조(Visual Basic의 경우 Nothing)인 경우workflowType is a null reference (Nothing in Visual Basic).

설명

WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다.Before the WorkflowInstance is created, validation is executed on it. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다.If any validation errors occur, the WorkflowValidationFailedException is thrown. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.This works well for simple scenarios, but in a server environment, revalidating a workflow for every activation might be unnecessary overhead.

유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.For more information about disabling validation, see ValidateOnCreate.

매개 변수를 전달의 예로 CreateWorkflow를 참조 하세요 Workflow with Parameters 샘플합니다.For an example of passing in parameters to CreateWorkflow, see Workflow with Parameters Sample.

적용 대상