2011-04-29 4 views
2

우리는 활동 (예 : CallA)을 작성하는 응용 프로그램을 가지고 있으며이 활동은 worklfow 프로젝트에서 사용됩니다. 이 액티비티 (CallA)는 다른 클래스 (및 다른 네임 스페이스)에있는 메서드를 호출합니다. 나는 방법에 대한 샘플 코드는 다음과 호출되는 쓴 : -Workflow 4.0의 InvokeMethod

namespace WorkflowApplication1 
{ 
    class Class1 
    { 
     public int Trial(int a, int b) 
     { 
      return 23; 
     } 
    } 
} 

우리는 도구 상자에서 제공 InvokeMethod 기능을 사용하려는 codeactivity를 사용하지 않습니다.

누구든지 WF 4.0의이 기능을 사용했다면 도움을 받으십시오.

미리 감사드립니다.

답변

2

대상 유형에서이 메서드를 구현하는 클래스를 가리켜 야합니다.

메소드 이름에 이름을 써야합니다. 메서드가 정적이 아닌 경우 해당 클래스 유형의 변수를 만들어 미리 초기화하고 TargetObject 속성에서 사용해야합니다. 당신은

가 여기

+0

나는 이것이 몇 년 후라는 것을 알고 있지만 간단한 것보다 InvokeMethod를 사용하면 어떤 이점이 있는지 알 수 있습니다. 읽을 수 있습니까? – Thomas

+0

과제 이상을 할 수 있습니다. 그게 전부 야. –

0

하는 데 도움이 질문에

1에 대한 제안을 다음과 희망) 윈도우 폼 만들기 (인보 활동에 대한 결과 속성을 사용) 결과를 저장하기 위해 WF에서 변수가 필요합니다 응용 프로그램
2)

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 

namespace WorkflowApplication1 
{ 
    public class Class1 
    { 
     public int Trial(int a, int b) 
     { 
      return 23; 
     } 
    } 
} 
,617에 1 등급에서 전체 코드를 변경 1 등급라는 클래스를 추가하고 WorkflowApplication1
3)에 네임 스페이스를 변경
enter image description here 8)를 삽입 아래와 같이 451,515,

4) 서열 클릭 2 개 변수를 생성) 시퀀스
7)을 컴파일 용액
6) activity1에
5라는 액티비티를 추가 activity1에 열고 추가
enter image description here아래와 같이 InvokeMethod를 WriteLine 및 활동은 같이,

enter image description here
9) 호출 메소드의 파라미터를 편집 아래 도시10) (출력 창을 엽니 다) Ctrl 키를 Button1_Click 이벤트

namespace Generic 
{ 

public partial class Form1 : Form 
{ 

    WorkflowApplication WFApp = null; 
    AutoResetEvent WFAppEvent = null; 

    public void RunWFApp() 
    { 
     WFAppEvent = new AutoResetEvent(false); 
     WFApp = new WorkflowApplication(new Activity1()); 

     WFApp.Completed = delegate (WorkflowApplicationCompletedEventArgs e) 
     { 
      WFAppEvent.Set(); 
     }; 
     WFApp.Run(); 
    } 
    private void button1_Click(object sender, EventArgs e) 
    { 
     RunWFApp(); 
    } 

    ... 
    ... 
    } 
} 

12

을 단추를 추가하고 Click 이벤트
(11)를 만드는 두 번 클릭)하여 Form1 클래스 내부에 다음 코드 조각을 추가 및 변경 -알토). 응용 프로그램을 실행하고 버튼을 클릭하여 출력 창에 숫자 23이 표시되는지 확인하십시오.