次の方法で共有


スローのサンプル

Download sample

例外を使用すると、ワークフロー、スコープ、およびユーザー レベルのエラー条件を、構造化され、統一された、タイプ セーフな方法で処理することができます。Windows Workflow Foundation の例外メカニズムは C# に似ています。開発者は、例外をスローしたり、種類別に例外をキャッチしたり、例外に変数を割り当てたりすることができます。

このサンプルでは、ワークフローが例外をモデル化してスローする仕組みや、この例外がホスト アプリケーションによって処理される仕組みを示します。サンプルでは、Exception をスローするために、ThrowActivity アクティビティを使用します。ワークフローで例外ハンドラが定義されていないため、例外はワークフローをエスケープし、ワークフローが終了します。ワークフローは非同期で実行されるため、例外情報は WorkflowTerminated イベントの WorkflowTerminatedEventArgs を介してホスト アプリケーションに送られます。

ThrowActivity アクティビティを使用する際には、スローする例外のタイプを指定して FaultType プロパティにそのタイプを割り当てる方法と、例外オブジェクトをインスタンス化して、Fault プロパティにそのインスタンスを割り当てる方法があります。FaultType プロパティを使用する場合、ThrowActivity アクティビティは、例外をスローしたときに、その例外タイプのインスタンスを作成します。この方法は、汎用的な例外をスローするか、または完全な宣言型作成シナリオを利用する場合に適しています。より具体的な例外情報をさらに提供するには、例外オブジェクトのインスタンスを作成し、ThrowActivity アクティビティの Fault プロパティにそれを割り当てます。このサンプルでは、この方法を示します。

Noteメモ :

ThrowActivity アクティビティを使用することは、アクティビティのコード ハンドラまたは実行コードから例外をスローすることと実質的に同じです。ただし、ThrowActivity アクティビティを使用する場合には、ワークフロー作成者はワークフローでの例外のスローを明示的にモデル化することができます。

サンプルをビルドするには

  1. このトピックの [サンプルのダウンロード] をクリックしてサンプルをダウンロードします。

    これにより、サンプル プロジェクトがローカルのハード ディスクに抽出されます。

  2. [スタート] をクリックし、[すべてのプログラム] をポイントします。次に、[Microsoft Windows SDK] をポイントし、[CMD シェル] をクリックします。

  3. サンプルのソース ディレクトリに移動します。

  4. コマンド プロンプトで、「MSBUILD <ソリューション ファイル名>」と入力します。

サンプルを実行するには

  • [SDK コマンド プロンプト] ウィンドウで、Throw\bin\debug フォルダ (このサンプルの VB のバージョンでは、Throw\bin フォルダ) にある .exe ファイルを実行します (このサンプルでは、メイン フォルダの下にあります)。

関連項目

参照

ThrowActivity

その他の技術情報

Using the ThrowActivity Activity
入れ子にされた例外ハンドラのサンプル
Fault Handling in Workflows
アクティビティのサンプル

Footer image

Copyright © 2007 by Microsoft Corporation.All rights reserved.