2016-04-05 2 views
1

私はASP.NET MVCアプリケーションを持っています。メソッドの1つがSystem.NullReferenceException "オブジェクト参照がオブジェクトのインスタンスに設定されていません"をスローしています。残念ながら、それはサーバー上でのみ発生し、コードのローカルバージョンは完全に正常に動作しています。どのオブジェクトが問題を引き起こしているのか、少なくともどのコード行がコード処理のブレーキを掛けているのかを知るためにどのようにデバッグすることができますか?サーバでSystem.NullReferenceExceptionが発生しています。

+0

Azureの場合は、リモートでデバッグすることができます – silkfire

+0

このコードが現在公開されていない場合は、試行をキャッチしてキャッチするにはパラメータ '(Exception e) 'MessageBox.Show(e.ToString());のようなメッセージボックスに出力されます。 これは役に立ちます。 –

+1

最初に、例外をスローしている特定のメソッドを表示するためにスタックトレースを出力します。次に、それをより小さい方法に抽出することによってその方法をリファクタリングする。最終的には、スタックトレースに基づいて犯人を見つけることができます。時にはメソッドが長すぎるためにデバッグするのが難しい場合もあります。 –

答えて

1

まず、適切なロギングフレームワークとtry...catchブロックを使用して、問題のおおよその位置に関する情報を取得します。スタックトレースを印刷します。その後

問題を絞り込むしよう:

  • 可能であれば、attach a remote debuggerにしてみてください。
  • Trace.WriteLineまたはDebug.Assertステートメントを追加し、受信パラメータが予想される範囲内の値を持つようにチェックします。
  • Enable tracingを使用して、ASP.NETで直接アクセスできるようにします。
関連する問題