次の方法で共有


3.5 ルール セットとの相互運用

このトピックの内容は、Windows Workflow Foundation 4 に該当します。

このサンプルでは、Interop アクティビティを使用して、Policy とルールを使用する .NET Framework 3.5 のカスタム アクティビティと統合する例を示します。このサンプルでは、カスタム アクティビティで公開されている依存プロパティに .NET Framework Version 4 変数をバインドすることで、カスタム アクティビティにデータを渡します。

必要条件

  1. Visual Studio 2010

  2. .NET Framework Version 4

  3. .NET Framework Version 3.5

使用例

Interop アクティビティ、依存プロパティを使用する .NET Framework 3.5 の Policy アクティビティ

説明

このサンプルでは、.NET Framework 3.5 アクティビティと統合するための統合シナリオの 1 つを示します。このサンプルには、Policy アクティビティを呼び出す .NET Framework 3.5 カスタム アクティビティが含まれています。

TravelRuleLibrary

デザイナーで TravelRuleSet.cs を開くと、次のようにポリシー アクティビティを含むカスタムのシーケンシャル アクティビティが示されます。

相互運用アクティビティ

ルールを検証するには、DiscountPolicy ポリシー アクティビティをダブルクリックします。ルール エディターが表示され、ルールが表示されます。

ルール セット エディター

このアクティビティと共に使用されるコード側 C# コードを検証するには、DiscountPolicy アクティビティを右クリックして [コードの表示] をクリックします。DiscountLevel の依存関係プロパティの設定を確認します。これは、.NET Framework 4 の Argument と同じです。

public static DependencyProperty DiscountLevelProperty = DependencyProperty.Register("DiscountLevel", typeof(int), typeof(TravelRuleSet));

[DescriptionAttribute("DiscountLevel")]
[CategoryAttribute("DiscountLevel Category")]
[BrowsableAttribute(true)]
[DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Visible)]
public int DiscountLevel
{
   get
   {
return ((int)base.GetValue(TravelRuleSet.DiscountLevelProperty)));
   }
   set
   {
base.SetValue(TravelRuleSet.DiscountLevelProperty, value);
   }
}

InteropWith35RuleSet

これは、Interop アクティビティを使用して、TravelRuleLibrary プロジェクトで作成されたカスタム ルール セットと統合する .NET Framework 4 シーケンシャル ワークフロー プロジェクトです。変数は、次のように最上位レベルの Sequence で作成されます。

変数

ソリューション エクスプローラー

最後に、Interop アクティビティは、TravelRuleSet と統合するために使用されます。Sequence で事前に宣言された変数は、依存プロパティにバインドするために使用されます。

アクティビティの種類

矢印

プロパティ

Ee829487.Important(ja-jp,VS.100).gif 注 :
サンプルは、既にコンピューターにインストールされている場合があります。続行する前に、次の (既定の) ディレクトリを確認してください。

<InstallDrive>:\WF_WCF_Samples

このディレクトリが存在しない場合は、「.NET Framework 4 向けの Windows Communication Foundation (WCF) および Windows Workflow Foundation (WF) のサンプル」にアクセスして、Windows Communication Foundation (WCF) および WF のサンプルをすべてダウンロードしてください。このサンプルは、次のディレクトリに格納されます。

<InstallDrive>:\WF_WCF_Samples\WF\Basic\Built-InActivities\InteropWith35RuleSet