4

デバッグできるWCFサービスがあります。デバッグしてメッセージを取得したい時点で、コードにブレークポイントを設定します

The breakpoint will not currently be hit.  The source code is different from the original version.

私はこれに3日間苦労していて、他の投稿で見つけたすべてを試しました。

私が気づいたことの1つは、[デバッグ]->[ウィンドウ]->[モジュール]に移動すると、デバッグするモジュールがそのリストにないことです。これはそれと関係があるのではないかと思います。誰かが私が何をすべきか知っていますか。

ありがとう、

サチン

編集:

私はこれらすべてともっと多くのことを試しましたが、何らかの理由で私はまだ同じ問題を抱えています。これに対する解決策はありますか?

4

3 に答える 3

3

Visual Studioで開いているファイルをすべて閉じた後、VisualStudioを閉じてみてください。次に、デバッグ用のbinフォルダーに移動し、すべての.pdbファイルを削除します。次に、Visual Studioを再度開いてプロジェクトを再構築するか、クリーンアップとビルドを実行して、リリースモードではなくデバッグモードになっていることを確認します。この問題は、pdbファイルがロックされた場合に発生する可能性があります。そのdll用のpdbファイルが存在する場合は、デバッグのためにそのモジュールを取得する必要があります。

それがうまくいかない場合は、マシンを再起動しましたか?プロセスがWindowsに巻き込まれることがあるため、再起動を試みない場合は、再起動するとロックが解除され、ファイルが上書きされます。

簡単な質問。問題のモジュールは外部モジュールですか、それともデバッグしている現在のソリューションの一部ですか?内部モジュールの場合、そのアセンブリの新しい.pdbファイルを生成するため、上記のソリューションは確実に機能するはずです。

于 2012-06-21T10:37:49.933 に答える
1

ソリューションエクスプローラー内のプロジェクトを右クリックし、[クリーン]を選択します。プロジェクトの新しいバージョンをビルドすると、ブレークポイントが再び機能します。これが機能しない場合は、binフォルダーとobjフォルダーからすべてを削除して、プロジェクトを再ビルドしてみてください。

于 2012-06-21T10:30:57.540 に答える
1

明白なことを言うと、このエラーは、コンパイルされたサービスがソースコードと一致しないこと、つまりサービスの実行後にソースコードが変更されたことを意味します。必ずソリューションを再構築してください。

WCFサービスをデバッグするために私が行うことは、VisualStudioの2つのインスタンスを持つことです。1つはWCFサービスホスティングアプリ(コンソール)を実行し、もう1つはクライアントを実行します。デバッグバージョンを実行していることを確認してください。クライアントがサービスに正常に接続できる限り、正常に動作(およびデバッグ)する必要があります。

あなたが得る

現在、ブレークポイントはヒットしません。

そのブレークポイントを持つモジュールが(まだ)ロードされていない場合。クライアントが接続するまで、サービスはロードされません。

于 2012-06-21T10:31:10.533 に答える