CallExternalMethodActivity クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
注意事項
The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*
ローカル サービスでのメソッドの呼び出しに使用されるワークフロー通信アクティビティを定義します。 このアクティビティは、ローカル サービスを通じてワークフローからホストにデータを送信するために使用されます。
public ref class CallExternalMethodActivity : System::Workflow::ComponentModel::Activity, System::Workflow::ComponentModel::IDynamicPropertyTypeProvider
[System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.CallExternalMethodActivityValidator))]
public class CallExternalMethodActivity : System.Workflow.ComponentModel.Activity, System.Workflow.ComponentModel.IDynamicPropertyTypeProvider
[System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.CallExternalMethodActivityValidator))]
[System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")]
public class CallExternalMethodActivity : System.Workflow.ComponentModel.Activity, System.Workflow.ComponentModel.IDynamicPropertyTypeProvider
[<System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.CallExternalMethodActivityValidator))>]
type CallExternalMethodActivity = class
inherit Activity
interface IDynamicPropertyTypeProvider
[<System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.CallExternalMethodActivityValidator))>]
[<System.Obsolete("The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*")>]
type CallExternalMethodActivity = class
inherit Activity
interface IDynamicPropertyTypeProvider
Public Class CallExternalMethodActivity
Inherits Activity
Implements IDynamicPropertyTypeProvider
- 継承
- 属性
- 実装
例
カスタム アクティビティで CallExternalMethodActivity を使用して、外部メソッドを呼び出す方法を次のコード例に示します。 このコード例は、PurchaseOrderWorkflow.Designer.cs ファイルから抜粋したリッスンの SDK サンプルの一部です。 詳細については、「 Listen Sample」を参照してください。
[System.Diagnostics.DebuggerNonUserCode()]
private void InitializeComponent()
{
this.CanModifyActivities = true;
this.Timeout = new System.Workflow.Activities.CodeActivity();
this.Delay = new System.Workflow.Activities.DelayActivity();
this.RejectPO = new System.Workflow.Activities.HandleExternalEventActivity();
this.ApprovePO = new System.Workflow.Activities.HandleExternalEventActivity();
this.OnTimeoutEventDriven = new System.Workflow.Activities.EventDrivenActivity();
this.OnOrderRejectedEventDriven = new System.Workflow.Activities.EventDrivenActivity();
this.OnOrderApprovedEventDriven = new System.Workflow.Activities.EventDrivenActivity();
this.POStatusListen = new System.Workflow.Activities.ListenActivity();
this.CreatePO = new System.Workflow.Activities.CallExternalMethodActivity();
//
// Timeout
//
this.Timeout.Name = "Timeout";
this.Timeout.ExecuteCode += new System.EventHandler(this.OnTimeout);
//
// Delay
//
this.Delay.Name = "Delay";
this.Delay.TimeoutDuration = System.TimeSpan.Parse("00:00:05");
//
// RejectPO
//
this.RejectPO.EventName = "OrderRejected";
this.RejectPO.InterfaceType = typeof(IOrderService);
this.RejectPO.Name = "RejectPO";
this.RejectPO.Invoked += new System.EventHandler<System.Workflow.Activities.ExternalDataEventArgs>(this.OnRejectPO);
//
// ApprovePO
//
this.ApprovePO.EventName = "OrderApproved";
this.ApprovePO.InterfaceType = typeof(IOrderService);
this.ApprovePO.Name = "ApprovePO";
this.ApprovePO.Invoked += new System.EventHandler<System.Workflow.Activities.ExternalDataEventArgs>(this.OnApprovePO);
//
// OnTimeoutEventDriven
//
this.OnTimeoutEventDriven.Activities.Add(this.Delay);
this.OnTimeoutEventDriven.Activities.Add(this.Timeout);
this.OnTimeoutEventDriven.Name = "OnTimeoutEventDriven";
//
// OnOrderRejectedEventDriven
//
this.OnOrderRejectedEventDriven.Activities.Add(this.RejectPO);
this.OnOrderRejectedEventDriven.Name = "OnOrderRejectedEventDriven";
//
// OnOrderApprovedEventDriven
//
this.OnOrderApprovedEventDriven.Activities.Add(this.ApprovePO);
this.OnOrderApprovedEventDriven.Name = "OnOrderApprovedEventDriven";
//
// POStatusListen
//
this.POStatusListen.Activities.Add(this.OnOrderApprovedEventDriven);
this.POStatusListen.Activities.Add(this.OnOrderRejectedEventDriven);
this.POStatusListen.Activities.Add(this.OnTimeoutEventDriven);
this.POStatusListen.Name = "POStatusListen";
//
// CreatePO
//
this.CreatePO.InterfaceType = typeof(IOrderService);
this.CreatePO.MethodName = "CreateOrder";
this.CreatePO.Name = "CreatePO";
this.CreatePO.MethodInvoking += new System.EventHandler(this.OnBeforeCreateOrder);
//
// PurchaseOrderWorkflow
//
this.Activities.Add(this.CreatePO);
this.Activities.Add(this.POStatusListen);
this.Name = "PurchaseOrderWorkflow";
this.CanModifyActivities = false;
}
<System.Diagnostics.DebuggerNonUserCode()> _
Private Sub InitializeComponent()
Me.CanModifyActivities = True
Me.CreatePO = New System.Workflow.Activities.CallExternalMethodActivity
Me.POStatusListen = New System.Workflow.Activities.ListenActivity
Me.OnOrderApprovedEventDriven = New System.Workflow.Activities.EventDrivenActivity
Me.OnOrderRejectedEventDriven = New System.Workflow.Activities.EventDrivenActivity
Me.OnTimeoutEventDriven = New System.Workflow.Activities.EventDrivenActivity
Me.ApprovePO = New System.Workflow.Activities.HandleExternalEventActivity
Me.RejectPO = New System.Workflow.Activities.HandleExternalEventActivity
Me.Delay = New System.Workflow.Activities.DelayActivity
Me.Timeout = New System.Workflow.Activities.CodeActivity
'
'Timeout
'
Me.Timeout.Name = "Timeout"
AddHandler Me.Timeout.ExecuteCode, AddressOf Me.OnTimeout
'
'Delay
'
Me.Delay.Name = "Delay"
Me.Delay.TimeoutDuration = System.TimeSpan.Parse("00:00:05")
'
'RejectPO
'
Me.RejectPO.EventName = "OrderRejected"
Me.RejectPO.InterfaceType = GetType(IOrderService)
Me.RejectPO.Name = "RejectPO"
AddHandler Me.RejectPO.Invoked, AddressOf Me.OnRejectPO
'
' ApprovePO
'
Me.ApprovePO.EventName = "OrderApproved"
Me.ApprovePO.InterfaceType = GetType(IOrderService)
Me.ApprovePO.Name = "ApprovePO"
AddHandler Me.ApprovePO.Invoked, AddressOf Me.OnApprovePO
'
' OnTimeoutEventDriven
'
Me.OnTimeoutEventDriven.Activities.Add(Me.Delay)
Me.OnTimeoutEventDriven.Activities.Add(Me.Timeout)
Me.OnTimeoutEventDriven.Name = "OnTimeoutEventDriven"
'
' OnOrderRejectedEventDriven
'
Me.OnOrderRejectedEventDriven.Activities.Add(Me.RejectPO)
Me.OnOrderRejectedEventDriven.Name = "OnOrderRejectedEventDriven"
'
' OnOrderApprovedEventDriven
'
Me.OnOrderApprovedEventDriven.Activities.Add(Me.ApprovePO)
Me.OnOrderApprovedEventDriven.Name = "OnOrderApprovedEventDriven"
'
' POStatusListen
'
Me.POStatusListen.Activities.Add(Me.OnOrderApprovedEventDriven)
Me.POStatusListen.Activities.Add(Me.OnOrderRejectedEventDriven)
Me.POStatusListen.Activities.Add(Me.OnTimeoutEventDriven)
Me.POStatusListen.Name = "POStatusListen"
'
' CreatePO
'
Me.CreatePO.InterfaceType = GetType(IOrderService)
Me.CreatePO.MethodName = "CreateOrder"
Me.CreatePO.Name = "CreatePO"
AddHandler Me.CreatePO.MethodInvoking, AddressOf Me.OnBeforeCreateOrder
'
' PurchaseOrderWorkflow
'
Me.Activities.Add(Me.CreatePO)
Me.Activities.Add(Me.POStatusListen)
Me.Name = "PurchaseOrderWorkflow"
Me.CanModifyActivities = False
End Sub
注釈
注意
ここでは、廃止された型と名前空間について説明します。 詳細については、「.NET 4.5 での Windows Workflow Foundation の新機能」を参照してください。
ローカル サービスとは、ローカル サービス インターフェイス (ExternalDataExchangeAttribute でマークされたインターフェイス) を実装するクラスのことであり、ExternalDataExchangeService に追加されます。
注意
外部メソッドが呼び出されると、そのメソッドのすべてのパラメーターが複製されます。 パラメーター型が を実装 ICloneableする場合、 Clone
メソッドが呼び出されるか、 を使用して BinaryFormatterシリアル化および逆シリアル化されます。
コンストラクター
CallExternalMethodActivity() |
古い.
CallExternalMethodActivity クラスの新しいインスタンスを初期化します。 |
CallExternalMethodActivity(String) |
古い.
アクティビティ名を使用して、CallExternalMethodActivity クラスの新しいインスタンスを初期化します。 |
フィールド
CorrelationTokenProperty |
古い.
DependencyProperty プロパティをターゲットとする CorrelationToken を表します。 |
InterfaceTypeProperty |
古い.
DependencyProperty プロパティをターゲットとする InterfaceType を表します。 |
MethodInvokingEvent |
古い.
DependencyProperty イベントをターゲットとする MethodInvoking を表します。 |
MethodNameProperty |
古い.
DependencyProperty プロパティをターゲットとする MethodName を表します。 |
ParameterBindingsProperty |
古い.
DependencyProperty プロパティをターゲットとする ParameterBindings を表します。 |
プロパティ
CorrelationToken |
古い.
外部メソッドの CorrelationToken を取得または設定します。 |
Description |
古い.
Activity の、ユーザーが定義した説明を取得または設定します。 (継承元 Activity) |
DesignMode |
古い.
このインスタンスがデザイン モードとランタイム モードのどちらであるかを示す値を取得します。 (継承元 DependencyObject) |
Enabled |
古い.
このインスタンスの実行と検証が可能かどうかを示す値を取得または設定します。 (継承元 Activity) |
ExecutionResult |
古い.
このインスタンスを最後に実行した際の ActivityExecutionResult を取得します。 (継承元 Activity) |
ExecutionStatus |
古い.
このインスタンスの、現在の ActivityExecutionStatus を取得します。 (継承元 Activity) |
InterfaceType |
古い.
ExternalDataExchangeAttribute が設定された、外部メソッドの宣言インターフェイスを取得または設定します。 |
IsDynamicActivity |
古い.
アクティビティがワークフロー インスタンスの既定の ActivityExecutionContext で実行されているかどうかに関する情報を取得します。 (継承元 Activity) |
MethodName |
古い.
ExternalDataExchangeService に登録されているローカル サービスで呼び出されるメソッドの名前を取得または設定します。 |
Name |
古い.
このインスタンスの名前を取得または設定します。 この名前は、ワークフロー プロジェクトの作成に使用されたプログラミング言語の変数の名前付け規則に準拠している必要があります。 (継承元 Activity) |
ParameterBindings |
古い.
外部メソッドの正式なパラメーター リストにあるバインド可能なパラメーターのコレクションを取得します。 |
Parent |
古い.
この CompositeActivity を格納している Activity を取得します。 (継承元 Activity) |
ParentDependencyObject |
古い.
DependencyObject グラフにおける親 DependencyObject を取得します。 (継承元 DependencyObject) |
QualifiedName |
古い.
アクティビティの限定名を取得します。 限定アクティビティ名は、ワークフロー インスタンス内で一意です。 (継承元 Activity) |
Site |
古い.
Site の DependencyObject コンポーネントの参照を取得または設定します。 (継承元 DependencyObject) |
UserData |
古い.
このクラス インスタンスにカスタム データを関連付ける IDictionary を取得します。 (継承元 DependencyObject) |
WorkflowInstanceId |
古い.
インスタンスに関連付けられた Guid を取得します。 (継承元 Activity) |
メソッド
イベント
Canceling |
古い.
アクティビティ実行が取り消された場合に発生します。 (継承元 Activity) |
Closed |
古い.
Activity の実行終了時に発生します。 (継承元 Activity) |
Compensating |
古い.
Activity 上で補正メソッドが起動されたときに発生します。 (継承元 Activity) |
Executing |
古い.
Activity の実行時に発生します。 (継承元 Activity) |
Faulting |
古い.
インスタンスの実行中、例外が発生したときに発生します。 (継承元 Activity) |
MethodInvoking |
古い.
メソッドを呼び出す前に発生します。 |
StatusChanged |
古い.
実行中の ActivityExecutionStatus の Activity が変更された場合に発生します。 (継承元 Activity) |
明示的なインターフェイスの実装
IComponent.Disposed |
古い.
コンポーネントの Disposed イベントを処理するメソッドを表します。 (継承元 DependencyObject) |
IDynamicPropertyTypeProvider.GetAccessType(IServiceProvider, String) |
古い.
指定されたプロパティに関するアクセスの種類を返します。 |
IDynamicPropertyTypeProvider.GetPropertyType(IServiceProvider, String) |
古い.
指定したプロパティの Type を返します。 |
適用対象
こちらもご覧ください
.NET