web-dev-qa-db-ja.com

WebアプリケーションからC#/。NETソリューションでWebサービスをデバッグする方法

Webサービスを使用したC#/。NETの8つのプロジェクトで構成されるアプリケーションソリューションがあります。

プロジェクトの1つはWebサービスです。

すべてのデータは、WindowsフォームアプリケーションのWebサービスを介してフェッチされます。

しかし、Windowsアプリケーションのデバッグ中に、Visual Studio2010でデータをフェッチするために必要なWebサービスをデバッグできません。

データフェッチイベントが発生したときに、ソリューションでWebサービスプロジェクトをデバッグするにはどうすればよいですか?

9
Harshit Solanki

通常、Visual Studioでデバッグする場合、選択したスタートアッププロジェクトはデバッグモードで実行されます。あなたの場合、WebAPIプロジェクトとWinFormsプロジェクトの両方を開始してデバッグする必要があります。これを行うには、ソリューションエクスプローラーを右クリックし、スタートアッププロジェクトの設定を選択します。ダイアログボックスが開き、複数のスタートアッププロジェクトを選択してから、ソリューションのデバッグ時に開始するプロジェクトを選択できます。

Solution Property Pages

もう1つのオプションは、単一のStartUpプロジェクトを用意することです(これは他のプロジェクトを実行するための要件であるため、Web APIプロジェクト)。次に、ソリューションエクスプローラーでWinFormsプロジェクトを右クリックし、デバッグ-> 新しいインスタンスの開始を選択します。これを複数回実行して、同じプロジェクトの複数のインスタンスをデバッグできます。

もちろん、実行中のプロセスにはいつでもデバッガーをアタッチできます。WebAPIがIISを使用してデプロイされている場合は、既に実行されています。上記の手順を使用すると、VisualStudioは適切なワーカープロセスにアタッチされます。 。

18

次のようにVSデバッガーをプロセスにアタッチすることにより、web serviceをデバッグできます。

Debug > Attach to Process > Attach

あなたが探している利用可能なサービスを閲覧して添付することができます。

3
John Stephen

VisualStudioをWebサービスのホストプロセスに接続する必要があります。

このプロセスは通常、IISワーカープロセスであり、名前はw3wp.exe on IIS 6+ on Windows Server 2003、Vista以降です。

このプロセスにアタッチするには、VisualStudioでDebug -> Attach to Processを使用できます。 Attach to processダイアログボックス内でShow processes from all usersをチェックしていることを確認し、プロセスを選択するときにManaged codeが選択されていることを確認します。マネージコードを選択するには、Select...をクリックし、Managed Codeチェックボックスをオンにします(V2.0またはV4.5,4.0は、選択したフレームワークによって異なります)

2
Alireza

この記事は2019年で、解決策はIISExpressに添付することです。デバッグ->アタッチ->リストでiisExpress(トレイではない)を見つけます。

0
Jeb50

Webサービスのプロセスにアタッチできます。 Visual Studioで、メニューデバッグプロセスにアタッチをクリックします。

0
Jan Barta