다음을 통해 공유


CodeActivity 클래스를 사용하여 워크플로 활동 작성

상속하여 만든 활동은 CodeActivity에서 메서드를 재정의하여 Execute 기본 명령적 동작을 구현할 수 있습니다.

CodeActivityContext 사용

Execute 유형인 context 매개 변수의 멤버를 사용하여 메서드 내에서 워크플로 런타임의 기능에 액세스할 수 있습니다. 사용할 수 있는 CodeActivityContext 기능에는 다음이 포함됩니다.

  • 변수 및 인수의 값을 가져오고 설정합니다.

  • Track를 사용하는 사용자 지정 추적 기능

  • GetProperty을 사용하여 활동 실행 속성에 액세스합니다.

CodeActivity에서 상속되는 사용자 지정 작업을 만들려면

  1. Visual Studio 2010을 엽니다.

  2. 파일, 새로 만들기프로젝트를 선택합니다. 프로젝트 형식 창의 Visual C#에서 워크플로 4.0을 선택하고 v2010 노드를 선택합니다. 템플릿 창에서 활동 라이브러리 선택합니다. 새 프로젝트 HelloActivity의 이름을 지정합니다.

  3. HelloActivity 프로젝트에서 Activity1.xaml을 마우스 오른쪽 단추로 클릭하고 삭제를 선택합니다.

  4. HelloActivity 프로젝트를 마우스 오른쪽 단추로 클릭하고 추가 를 선택한 다음 클래스를 선택합니다. 새 클래스 이름을 HelloActivity.cs.

  5. HelloActivity.cs 파일에서 다음 using 지시문을 추가합니다.

    using System.Activities;
    using System.Activities.Statements;
    
  6. 클래스 선언에 기본 클래스를 추가하여 CodeActivity로부터 새 클래스가 상속되게 만듭니다.

    class HelloActivity : CodeActivity
    
  7. 메서드를 추가하여 클래스에 기능을 추가합니다 Execute .

    protected override void Execute(CodeActivityContext context)
    {
        Console.WriteLine("Hello World!");
    }
    
  8. CodeActivityContext 추적 레코드를 만드는 데 사용합니다.

    protected override void Execute(CodeActivityContext context)
    {
        Console.WriteLine("Hello World!");
        CustomTrackingRecord record = new CustomTrackingRecord("MyRecord");
        record.Data.Add(new KeyValuePair<String, Object>("ExecutionTime", DateTime.Now));
        context.Track(record);
    }