다음을 통해 공유


NativeActivity 기본 클래스

NativeActivity는 protected 생성자를 가진 추상 클래스입니다. CodeActivity와 마찬가지로 NativeActivityExecute 메서드를 구현하여 필수 동작을 작성하는 데 사용됩니다. CodeActivity와 달리 NativeActivityNativeActivityContext 메서드에 전달되는 Execute 개체를 통해 워크플로 런타임의 모든 노출된 기능에 액세스할 수 있습니다.

NativeActivityContext 사용

Execute 형식의 context 매개 변수 멤버를 사용하여 NativeActivityContext 메서드에서 워크플로 런타임 기능에 액세스할 수 있습니다. NativeActivityContext를 통해 사용할 수 있는 기능은 다음과 같습니다.

NativeActivity에서 상속되는 사용자 지정 활동을 만들려면

  1. OpenVisual Studio 2010.

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

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

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

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

    using System.Activities;
    using System.Activities.Statements;
    
  6. 기본 클래스를 클래스 선언에 추가하여 새 클래스를 NativeActivity에서 상속하도록 설정합니다.

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

    protected override void Execute(NativeActivityContext context)
    {
        Console.WriteLine("Hello World!");
    }
    
  8. CacheMetadata 메서드를 재정의하고 적합한 Add 메서드를 호출하여 워크플로 런타임에서 사용자 지정 활동의 변수, 인수, 자식 및 대리자를 알 수 있도록 합니다. 자세한 내용은 NativeActivityMetadata 클래스를 참조하세요.

  9. NativeActivityContext 개체를 사용하여 책갈피를 예약합니다. 책갈피를 만들고 예약하고 다시 시작하는 방법은 Bookmarks를 참조하세요.

    protected override void Execute(NativeActivityContext context)
        {
            // Create a Bookmark and wait for it to be resumed.
            context.CreateBookmark(BookmarkName.Get(context),
                new BookmarkCallback(OnResumeBookmark));
        }