다음을 통해 공유


작업 3: 사용자 지정 활동 순차 워크플로 만들기

이 작업에서는 활동이 포함되지 않은 기본 순차 워크플로를 만듭니다. 자습서가 진행되면서 이 워크플로를 기반으로 호스트 응용 프로그램에 응답하는 데 필요한 활동과 논리를 추가할 것입니다.

참고

이 연습을 차례대로 수행하는 것이 좋지만 반드시 그럴 필요는 없습니다. 샘플 프로젝트를 열고 다음 단원의 단계를 진행하여 이 연습을 시작할 수 있습니다.

Visual Studio에서 SimpleExpenseReport 순차 워크플로 소스 파일을 만들려면

  • 솔루션 탐색기에서 CustomActivity 프로젝트를 마우스 오른쪽 단추로 클릭하고 추가를 클릭한 다음 새 항목을 클릭합니다. 클래스를 선택하고 이름을 WebTearWorkflow로 변경합니다.

텍스트 편집기를 사용하여 순차 워크플로 소스 파일을 만들려면

  1. 프로젝트 디렉터리에서 WebTearWorkflow라는 새 파일을 만듭니다.

    C# 응용 프로그램을 만드는 경우 파일에 .cs 확장명을 지정하고 Visual Basic 응용 프로그램을 만드는 경우에는 파일에 .vb 확장명을 지정합니다.

  2. 작업 2: 사용자 지정 활동 호스트 응용 프로그램 만들기에서 추가한 ItemGroup 요소에서 새 Compile 요소를 추가합니다.

  3. Include라는 새 특성을 Compile 요소에 추가합니다.

    1단계에서 만든 파일 이름을 특성 값으로 사용합니다.

  4. SubType이라는 새 자식 요소를 Compile 요소에 추가합니다.

    이 요소에 Component 값을 지정합니다. ItemGroup 노드는 다음 코드와 같이 나타납니다.

    <ItemGroup>
        <Compile Include="CustomActivityHost.vb">
            <SubType>Form</SubType>
        </Compile>
        <Compile Include="WebTearWorkflow.vb">
            <SubType>Component</SubType>
        </Compile>
    </ItemGroup>
    
    <ItemGroup>
        <Compile Include="CustomActivityHost.cs">
            <SubType>Form</SubType>
        </Compile>
        <Compile Include="WebTearWorkflow.cs">
            <SubType>Component</SubType>
        </Compile>
    </ItemGroup>
    

순차 워크플로를 정의하려면

  1. WebTearWorkflow 파일에서 다음 네임스페이스 지시문을 추가하여 워크플로에 필요한 형식을 가져옵니다.

    using System;
    using System.Workflow.Activities;
    using System.Workflow.ComponentModel;
    
  2. Microsoft.Samples.Workflow.Tutorials.CustomActivity 네임스페이스에서 WebTearWorkflow라는 새 sealed 클래스를 만듭니다.

  3. 이전 단계에서 만든 클래스를 SequentialWorkflowActivity에서 파생시킵니다.

    Namespace Microsoft.Samples.Workflow.Tutorials.CustomActivity
        Public NotInheritable Partial Class WebTearWorkflow : Inherits SequentialWorkflowActivity
        End Class
    End Namespace
    
    namespace Microsoft.Samples.Workflow.Tutorials.CustomActivity
    {
        public sealed partial class WebTearWorkflow : SequentialWorkflowActivity
        {
        }
    }
    
  4. WebTearWorkflow 클래스에서 기본 생성자를 만듭니다.

    생성자에서 다음 단계에서 만드는 InitializeComponent 메서드를 호출합니다.

  5. WebTearWorkflow 클래스에서 InitializeComponent라는 private 메서드를 만듭니다.

  6. InitializeComponent 메서드에서 다음 속성을 설정합니다.

    • 워크플로의 CanModifyActivities 속성을 true로 설정합니다.

    • Name 속성을 "WebTearWorkflow" 값으로 설정합니다.

    • CanModifyActivities 속성을 false로 설정합니다.

    private void InitializeComponent()
    {
        this.CanModifyActivities = true;
        this.Name = "WebTearWorkflow";
        this.CanModifyActivities = false;
    }
    

코드 컴파일

코드 컴파일에 대한 자세한 내용은 코드 컴파일을 참조하십시오.

연습 2: 사용자 지정 활동 및 워크플로 만들기에서는 사용자 지정 활동을 만들어 이 작업에서 만든 워크플로에 추가합니다.

참고 항목

참조

SequentialWorkflowActivity
CanModifyActivities

기타 리소스

연습 2: 사용자 지정 활동 및 워크플로 만들기
자습서: 순차 워크플로 만들기
Simple Sequential Workflow

Footer image

Copyright © 2007 by Microsoft Corporation. All rights reserved.