2011-07-28 10 views
0

これは本当に簡単なことですが、本当に混乱しているのですが残念です。
私が取得しています:オブジェクトリファレンスがオブジェクトのインスタンスに設定されていません

とNullReferenceExceptionは、ユーザーコードによって未処理だった:オブジェクト参照がオブジェクトインスタンスに設定されていません。私は次のコードを実行すると

Session["AppID"] is 14 
Option is HOY 
Owner is ETJ 
AuditUser(Session) is [CBX] 

は私が必要とされている他のどのような情報がわからない:

a.Forms.Add(AppraisalForm.CreateNew(int.Parse(Session["AppID"].ToString()), option, 
    owner, webStatics.AuditUser(Session))) 

を私はブレークポイントを使用しているたことを示します誰かが私を助けることができれば素晴らしいだろう。

+3

そして、 'a'と' a.Forms'とは何ですか?そして「鑑定書」?メンバーにアクセスしている(それの後に '.'がある)オブジェクトを見る必要があります。 – Oded

+0

nullであることを確認できますか?参照している各オブジェクトを確認します。ヌルオブジェクトで何かをしようとすると、そのメッセージが表示されます。たとえば、Formsがnullで、「追加」を呼び出したとします。これは、ヌルオブジェクトを簡単に見つけるために、別々の行(複数の変数)に分割する必要があります。 –

+0

の可能な複製[.NETのNullReferenceExceptionとは何ですか?](http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-in-net) – Justin

答えて

1

CreateNewはnullを返しますか?ヌルですか?それを見つける最も簡単な方法は、各要素を分割してそれを独自の変数に割り当てることです。それはどの作品が失敗しているかを教えてくれるでしょう。

この問題は、まさにこのようなコードを書くべきではない理由です。

+0

ちょうど私が言うつもりだった。 –

0

a、a.Forms、AppraisalForm(これがクラスでない場合)、AppraisalForm.CreateNewの戻り値、およびwebStaticsの値を見てください。そこに何かがあります。このステートメントを複数のステートメントに分割すると、エラーの原因となっている行を確認できます。

関連する問題