私の ASP.NET Web ページには、C++ .NET DLL によって提供されるデータが必要です。最初はこの DLL を読み込んで関数を呼び出すまでは問題なく動作しているように見えましたが、.cs ファイルで DLL を参照すると、プロジェクトが実際にはデバッグされない状態になっているようです。
DLL を参照するすべてのコードをコメントアウトし、プロジェクトから参照を削除したところ、問題なく動作しました。DLL への参照を追加したところ、問題なく動作しました。DLL の名前空間 (この場合は MDnlnkCmdReader; を使用) の using ステートメントのみをコメント解除し、DLL を参照する実際のコードを残していません。その行をもう一度コメントアウトすると、ブレークポイントが再びヒットします。
Web ページが正しく読み込まれているように見えるがブレークポイントにヒットしないこの状態になると、ソース コードに戻ってブレークポイントを表示すると、注意フラグ付きのアウトラインとして表示され、マウスオーバーすると、次に、「ブレークポイントは現在ヒットしません。ソースコードは元のバージョンとは異なります」と表示されます
私もそのエラーメッセージを調べて、通常の解決策を試しました。/bin フォルダー全体を削除すると、global.asax に関する Web サーバー エラー メッセージが表示されるようになります。これらは、任意の CPU モード (通常は x64 でビルド) でビルドするまで持続します。その時点で、DLL (x64 でビルド) に関する「ロードできません」というメッセージが表示されます。それへの参照を削除すると、ページは再び機能します。x64 モードに切り替えて参照を追加し直すと、開始した場所に戻ります。再起動しても効果がないようです。
ここで何が起こっているのか、それから抜け出す方法はありますか?