WorkflowRuntime.CreateWorkflow 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다.
오버로드
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>, Guid) |
지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다. |
CreateWorkflow(Type, Dictionary<String,Object>, Guid) |
지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다. |
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>) |
지정된 XmlReader 개체 및 지정된 Dictionary<TKey,TValue>에 포함된 인수를 사용하여 워크플로 인스턴스를 만듭니다. |
CreateWorkflow(XmlReader) |
지정된 XmlReader를 사용하여 워크플로 인스턴스를 만듭니다. |
CreateWorkflow(Type) |
지정된 워크플로 Type을 사용하여 새 워크플로 인스턴스를 만듭니다. |
CreateWorkflow(Type, Dictionary<String,Object>) |
지정된 워크플로 Type 및 지정된 Dictionary<TKey,TValue>에 포함된 워크플로에 대한 인수를 사용하여 워크플로 인스턴스를 만듭니다. |
설명
워크플로 런타임 엔진이 시작되지 않은 경우 CreateWorkflow 메서드는 StartRuntime을 호출합니다. 가능한 예외 목록은 StartRuntime을 참조하십시오. 워크플로 인스턴스를 만든 후 WorkflowInstance.Start 메서드가 반환하는 WorkflowInstance 개체에서 CreateWorkflow를 호출하여 실행을 시작합니다.
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>, Guid)
지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다.
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
매개 변수
- namedArgumentValues
- Dictionary<String,Object>
워크플로에 대한 인수를 나타내는 문자열로 키가 지정된 개체의 Dictionary<TKey,TValue>입니다.
- instanceId
- Guid
만들 특정 Guid의 WorkflowInstance입니다.
반환
만들어진 워크플로 인스턴스입니다.
예외
workflowType
이 null 참조(Visual Basic의 경우 Nothing
)인 경우
설명
WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.
유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.
instanceId
이 로드한 모든 실행 중인 워크플로의 워크플로 WorkflowRuntime는 고유해야 합니다. instanceId
를 전달하여 워크플로를 만드는 경우 실행 중인 워크플로에서 이미 해당 instanceId
를 사용 중이면 InvalidOperationException이 throw됩니다.
매개 변수를 전달의 예로 CreateWorkflow
를 참조 하세요 Workflow with Parameters 샘플합니다.
XML에 정의 된 규칙을 사용 하 여 예제를 보려면 IfElse with Rules 샘플합니다.
적용 대상
CreateWorkflow(Type, Dictionary<String,Object>, Guid)
지정된 매개 변수를 사용하여 워크플로 인스턴스를 만듭니다.
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
매개 변수
- namedArgumentValues
- Dictionary<String,Object>
워크플로에 대한 인수를 나타내는 문자열로 키가 지정된 개체의 Dictionary<TKey,TValue>입니다.
- instanceId
- Guid
만들 특정 Guid의 WorkflowInstance입니다.
반환
만들어진 워크플로 인스턴스입니다.
예외
workflowType
이 null 참조(Visual Basic의 경우 Nothing
)인 경우
설명
WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.
유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.
instanceId
이 로드한 모든 실행 중인 워크플로의 워크플로 WorkflowRuntime는 고유해야 합니다. instanceId
를 전달하여 워크플로를 만드는 경우 실행 중인 워크플로에서 이미 해당 instanceId
를 사용 중이면 InvalidOperationException이 throw됩니다.
매개 변수를 전달의 예로 CreateWorkflow
를 참조 하세요 Workflow with Parameters 샘플합니다.
적용 대상
CreateWorkflow(XmlReader, XmlReader, Dictionary<String,Object>)
지정된 XmlReader 개체 및 지정된 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
매개 변수
- namedArgumentValues
- Dictionary<String,Object>
워크플로에 대한 인수를 나타내는 문자열로 키가 지정된 개체의 Dictionary<TKey,TValue>입니다.
반환
만들어진 워크플로 인스턴스입니다.
예외
workflowDefinitionReader
이 null 참조(Visual Basic의 경우 Nothing
)인 경우
설명
워크플로 인스턴스는 XmlReader가 참조하는 워크플로 및 namedArgumentValues
가 제공하는 인수에서 만들어집니다.
WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.
유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.
매개 변수를 전달의 예로 CreateWorkflow
를 참조 하세요 Workflow with Parameters 샘플합니다.
XML에 정의 된 규칙을 사용 하 여 예제를 보려면 IfElse with Rules 샘플합니다.
적용 대상
CreateWorkflow(XmlReader)
지정된 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
이 null 참조(Visual Basic의 경우 Nothing
)인 경우
예제
다음 예제에서는 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();
}
}
설명
워크플로 인스턴스는 XmlReader가 참조하는 XAML 워크플로 정의 파일에서 만들어집니다.
WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.
유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.
적용 대상
CreateWorkflow(Type)
지정된 워크플로 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
이 null 참조(Visual Basic의 경우 Nothing
)인 경우
예제
다음 코드 예제에서는 WorkflowInstance 메서드를 사용하여 워크플로 호스트에 CreateWorkflow 개체를 만드는 권장 방법을 보여 줍니다.
일부인이 코드 예제는 워크플로 취소 하면 샘플입니다.
Type type = typeof(SampleWorkflow1);
WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
workflowInstance.Start();
Dim workflowInstance As WorkflowInstance
workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
workflowInstance.Start()
설명
WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.
유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.
적용 대상
CreateWorkflow(Type, Dictionary<String,Object>)
지정된 워크플로 Type 및 지정된 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
매개 변수
- namedArgumentValues
- Dictionary<String,Object>
워크플로에 대한 인수를 나타내는 문자열로 키가 지정된 개체의 Dictionary<TKey,TValue>입니다.
반환
만들어진 워크플로 인스턴스입니다.
예외
workflowType
이 null 참조(Visual Basic의 경우 Nothing
)인 경우
설명
WorkflowInstance를 만들기 전에 유효성 검사가 먼저 실행됩니다. 유효성 검사 오류가 발생하면 WorkflowValidationFailedException이 throw됩니다. 단순한 시나리오에서는 문제가 없지만 서버 환경에서는 활성화가 실행될 때마다 워크플로의 유효성을 다시 검사하는 것이 불필요한 부담이 될 수 있습니다.
유효성 검사를 사용 하지 않도록 설정 하는 방법에 대 한 자세한 내용은 참조 하세요. ValidateOnCreate합니다.
매개 변수를 전달의 예로 CreateWorkflow
를 참조 하세요 Workflow with Parameters 샘플합니다.