多層アプリケーション・デバッグ・モード
複数層アプリケーション・デバッグ・モードでは、単一のVisual Studioインスタンス内から.NETコードとPL/SQLコードの両方をシームレスにデバッグできます。.NETコードからPL/SQLコードに直接ステップ・インしてステップ・アウトし、ライブ・データを渡してそのデータをデバッグできます。これは、クライアント・サーバー・アプリケーション(ASP.NET Webアプリケーションではなく)で最も役立ちます。
この項には次のトピックが含まれます:
多層アプリケーション・デバッグの仕組み
Visual Studioからデバッグ中のアプリケーションが、有効なブレークポイントを含むPL/SQLプログラムを実行する場合、デバッグ・プロセスはアプリケーション層(アプリケーションのデバッグ用)からデータベース層(PL/SQLプログラムのデバッグ用)に切り替わります。実行はPL/SQLプログラムの有効なブレークポイントで停止します。
その後から先は、Oracle PL/SQLデバッガを使用してPL/SQLプログラムの実行を制御し、デバッグ情報を確認できます。PL/SQLプログラムの実行が終了したら、デバッガはアプリケーション層へと切り替わります。
Oracle PL/SQLデバッガが起動すると、「Debug Location」ツールバーにOracleデバッガが表示されます。「Debug Location」ツールバーを使用して層を切り替えることができます。
多層アプリケーション・デバッグを使用する前に
多層アプリケーション・デバッグを使用する前に、次を実行する必要があります:
-
ブレークポイントを設定します
多層アプリケーション・デバッグでは、アプリケーションからコールされたPL/SQLプログラムで「Step Into」コマンドは動作しません。したがって、次の場所にそれぞれ最低でも1つのブレークポイントを設定する必要があります:
-
アプリケーションからコールされるPL/SQLプログラム。
-
PL/SQLプロシージャまたはファンクションのコール後のある時点のコール元アプリケーション。
アプリケーション内にブレークポイントがない場合、アプリケーション層に戻った際にデバッガが停止せず、実行が続行します。
-
-
「Tools」メニューから「Application Debugging」を選択して、多層アプリケーション・デバッグを有効にします。
-
アプリケーションのODP.NET構成ファイル(
machine.config、web.configまたはapp.config)にORA_DEBUG_JDWP値が設定されていないことを確認します。設定されている場合は、無効にします。