1

WebサイトとWebサービスを含むVS2008ソリューションがあります。私は両方を同時に開発しているので、一方から他方にデバッグできると便利です。

Webサービスが見つからない場合があります。web.configを見ると、見ているポート番号が、デバッガーを使用したときにサービスを自動実行するポート番号ではないことがわかります。たとえば、web.configリファレンスは次のようになります。

key = "mynamespace.mywebservice" value = "http:// localhost:55765/mywebservice.asmx"を追加します

カッシーニのポートアイコンにカーソルを合わせると、Webサービスがポート55382(またはその他の非55765ポート)で実行されていることがわかります。それが見つからないのも不思議ではありません。

それが実行されるポート番号がWeb構成で指定されたものであることを強制する方法はありますか?また、Web構成ポート番号を使用してどこで実行するかを判断していない場合...どこで決定しますか?VS2005では、デバッグ時に使用するポート番号を指定する方法がありましたが、VS2008のWebサービスプロジェクトのどこにもそれが見つかりません。

より多くの開発者がこのプロジェクトに参加するにつれて、これは本当に問題を引き起こすでしょう-どうすればそれを修正できますか?Webサービスを削除してプロジェクトに再度追加すると修正されますが、文字通り1日に数回実行する必要があります。理想的な解決策ではありません。

4

3 に答える 3

3

ここから

デフォルトでは、カッシーニはホストする各Webサイトにランダムなポート番号を割り当てます。このポート番号は、Visual Studioデバッガーを使用してサイトを初めて起動したときに割り当てられ、ソリューションの存続期間中は保持されます。

この動作を無効にするには、ソリューションエクスプローラーでWebプロジェクトのプロジェクトノードを選択し、[表示]-> [プロパティウィンドウ](Ctrl-W、P)を選択します。「動的ポートを使用」をFalseに変更してから、お好みのTCPポートを指定します(これを1000〜5000の間に保つのが最適ですが、技術的には未使用のTCPポートでもかまいません)。

これにより、カッシーニがホストするサイトに確定的なポート番号が与えられ、そのサイトでホストされるサービスを使用するIndigoクライアントを簡単に作成できるようになります。

于 2009-08-24T13:26:53.737 に答える
1

私が解決策を探していたとき、私は今日これに遭遇しました...上記のように、あなたはメモ帳で解決策を開くことができます。次の行を探します。

VWDPort = "55071"

ポート番号を希望どおりに変更します。ファイルを保存します。ソリューションを開いている場合は、リロードするように求められます。VSを再起動しない場合は、問題なく実行できます。VSにオプションがあるかどうかはわかりませんが、これは私にとって簡単なハックでした。

于 2010-08-30T14:33:07.943 に答える
0

VS2008ソリューションエクスプローラーの場合:Webプロジェクトを右クリックし、[プロパティ]を選択します。左側の[Web]をクリックすると、[サーバー]の下にポートオプションが表示されます。

于 2009-08-24T13:26:00.120 に答える