ワークフロー デザイナーを使用してワークフローをデバッグする
ワークフロー デザイナーには、ワークフローとカスタム アクティビティをデバッグする機能が用意されています。 そのプロセスと動作は、Visual Studio の既定のデバッガーと同様です。
ワークフロー デバッガーを呼び出す
ほとんどの場合、他の Visual Studio プログラミング言語で書かれたプログラムをデバッグするときと同じようにして、ワークフローをデバッグすることができます。 ワークフロー デバッガーは、次の方法で開始できます。
[デバッグ] メニューの [プロセスにアタッチ] を選択し、ワークフロー インスタンスとして実行中のホスト プロセスを選択します。 この手順は、マネージド コードのホスト プロセスへのアタッチと同じです。
F5 キーを押して、ワークフローのインスタンスの実行を開始するか、ブレークポイントのヒット後に実行を続けます。
リモート デバッグを使用します。 リモート デバッグの使用については、「方法: リモート デバッグを有効にする」を参照してください。
Note
x86 アーキテクチャを対象とするワークフロー アプリケーションが、64 ビット オペレーティング システムを実行するコンピューターでホストされている場合は、Visual Studio をリモート コンピューターにインストールするか、ワークフロー アプリケーションの対象を [任意の CPU] に変更しない限り、リモート デバッグは機能しません。
コードのステップ実行
ステップイン: F11 キーを押してアクティビティにステップインします。 デバッガーは、任意の定義済みハンドラーにステップ インします。 ハンドラーが定義されていない場合は、アクティビティをステップ オーバーするか、(他のアクティビティを含む) 複合アクティビティの場合には、実行される最初のアクティビティにステップ インします。
ステップアウト: Shift + F11 キーを押して、アクティビティからステップアウトします。 アクティビティからステップ アウトすると、現在のアクティビティとすべての兄弟アクティビティは最後まで実行されます。 その後、デバッガーは現在のアクティビティの親で停止します。 コード ハンドラーからステップ アウトするとき、デバッガーはハンドラーに関連付けられたアクティビティで停止します。
ステップオーバー: F10 キーを押してアクティビティをステップオーバーします。 複合アクティビティをステップ オーバーするときは、デバッガーが、複合アクティビティの最初の実行可能な子で停止します。 複合ではないアクティビティ (Assign アクティビティなど) をステップ オーバーするときは、デバッガーが、そのアクティビティおよび関連するハンドラーを実行して、次のアクティビティで停止します。 実行されるアクティビティが複合アクティビティの最後の子アクティビティである場合、デバッガーは、それを実行した後に親アクティビティで停止します。
F5 キーを使用してデバッグする
ワークフロー コンソール アプリをビルドする場合は、F5 キーを押すだけで、アプリケーションとワークフローのデバッグが開始します。 アクティビティ ライブラリ自体をビルドする場合は、実行可能なホスト アプリケーションをスタートアップ プロジェクトとして指定する必要があります。 ソリューション エクスプローラーでスタートアップ プロジェクトを設定するには、ホストのプロジェクト名を右クリックして [スタートアップ プロジェクトに設定] を選択します。