10

私は現在、私のInjectableAttributes がフィルター部分に到達しない理由を見つけようとしています。
そのため、ソース プロジェクトに直接リンクして、ブレークポイントなどを簡単に配置できるようにしました。
ただし、ビルドすると、次のメッセージが表示されます。

次のモジュールは、最適化を有効にして、またはデバッグ情報なしでビルドされました。
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\[ランダムな名前のディレクトリの束]\assembly\[よりランダムな名前]\MvcTurbine.Web.DLL]

このモジュールをデバッグするには、プロジェクトのビルド構成をデバッグ モードに変更します。このメッセージを非表示にするには、[起動時にユーザー コードがない場合に警告する] デバッガー オプションを無効にします。

プロジェクトのプロパティを確認しました。構成は「アクティブ (デバッグ)」に設定され、「コードの最適化」チェック ボックスはオフになっています。

更新
プロジェクトではなくファイルを誤ってインクルードしなかったかどうかを再度確認しましたが、参照は正しいようです。
すべてのライブラリが確実にどこかで再構築されるように、既存のビンもすべて削除しましたが、役に立ちませんでした。

更新
高度なビルド ウィンドウでは、デバッグ出力は [完全] に設定され、すべてのオプションはデバッグ情報をビルドしているプロジェクトと同じです。
構成マネージャーは、プロジェクトがビルドされており、他のすべてのオプションとまったく同じ設定になっていることを示しています。

更新
Debug->Windows-Modules ウィンドウで、タービン ライブラリのシンボル ステータスは、PDB file does not match imageシステム全体で対応するすべての pdb ファイルを削除して、再生成されるようにしましたが、役に立ちませんでした。
確認するために、システム全体で dll も検索して削除しました。何もない。

VS がデバッグ情報を作成できない原因は何ですか?

4

3 に答える 3

7

VS2010を使用して、今朝同じ問題を経験しました。実行可能ファイル、ライブラリ、PDB などのすべてのビルド アーティファクトを削除することで解決しました。これは、\bin\Debug、\bin\Release、\obj\Debug、および \obj\Release (サブフォルダーを含む) にありました。その後、デバッグ構成を再コンパイルし、ビジネスに戻りました。

于 2011-10-23T11:18:29.000 に答える
4

プロジェクトのデバッグ情報が生成されていることを確認します。これを行うには、[プロジェクト プロパティ] ページの [ビルド] タブを開き、[詳細...] ボタンをクリックします。「デバッグ情報」の設定を確認してください。各オプションの意味の説明については、この MSDN の記事を参照してください。

それでも解決しない場合は、MvcTurbine プロジェクトが実際にビルドされていることを確認してください ( Build -> Configuration Manager)。

于 2009-12-23T14:22:47.317 に答える
2

MvcTurbineプロジェクトではなく、MvcTurbine.Web.DLLファイルを参照したようです。参照を削除して、プロジェクト参照として再度追加してみてください。

更新DLL が GAC から来ているのではありませんか? アプリの実行中に [Debug] -> [Windows] -> [Modules] を実行し、[Path] 列を確認します。

于 2009-12-23T13:59:28.650 に答える