1. ホーム
  2. c#

[解決済み] リリースモードの.NETアセンブリのスタックトレースで行数を表示する

2022-05-04 10:04:55

質問

Releaseモードでビルド/デプロイされた.NETアセンブリのスタックトレース内の行を表示する方法はありますか?

UPDATEしてください。

私のアプリケーションは、3つのクラスライブラリプロジェクトと1つのASP.NET "ウェブサイト"プロジェクトに分かれています。 私が追跡しようとしているエラーは、3つのクラスライブラリプロジェクトのうちの1つです。 私は、"Object reference not set to an instance of an object" エラーを発生させているクラスライブラリプロジェクトのpdbファイルのみをデプロイしました。

スタックトレースで行番号が表示されないままです。 スタックトレースで行番号を取得するには、すべてのプロジェクトの pdb ファイルをデプロイする必要がありますか?

解決方法

アプリケーションごとにpdbファイルを配置することで、行番号の問題を解決しました。

解決方法は?

  • スタックトレースの行番号を表示させたいプロジェクトのプロパティウィンドウに入ります。
  • Build "vertical]タブ"をクリックします。
  • Release"設定を選択します。
  • インライン化されたコードで時々発生するトレース問題を回避するために、"Optimize code"パラメータのチェックを外します(このステップは必須ではありません)。
  • 詳細設定...」ボタンを押し、「出力 -> デバッグ情報 -> pdb-only」を選択します。
  • 生成された .pdb ファイルをアセンブリと一緒にデプロイします。

下記のコメントで実装。

  • もうひとつ、quot;Package/Publish Web" セクションで、quot;Exclude generated debug symbols" チェックボックスもチェックされていないことを確認してください。