2016-07-15 6 views
-2

NullReferenceExceptionのほとんどのケースが初期化が欠落していることがわかっています。しかし、私はMTempとFTempを初期化しました。次のコードはなぜNullReferenceExceptionをスローしますか?

私が紛失していることはありますか?


クラス内の重要なコード "フー":

class Team 
{ 
    public List<Fahrer> TeamFahrer { get; set; } 

    public void Bar(string salad, string hotdog, string brokkoli) 
    { 
     Motorrad MTemp = new Motorrad(brokkoli); 
     Fahrer FTemp = new Fahrer(salad, hotdog, MTemp); 
     TeamFahrer.Add(FTemp); 
    } 
} 

Motorradの内部の重要コード:

class Motorrad 
{ 
    public Motorrad(string marke) 
    { 
     Marke = marke; 
    } 

    public string Marke { get; set; } 
} 

Fahrer内部の重要コード:

class Fahrer 
{ 
    public Fahrer(string salad, string hotdog, Motorrad moped) 
    { 
     Vorname = salad; 
     Nachname = hotdog; 
     MotorradDesFahrers = moped; 
    } 

    public string Vorname { get; set; } 
    public string Nachname { get; set; } 
    public Motorrad MotorradDesFahrers { get; set; } 
} 
+1

'TeamFahrer'を初期化していますか? –

+0

TeamFahrerを初期化していません。 "Add"を呼び出す前に、TeamFahrer = new Listを呼び出す必要があります。(); – Mangist

+1

例外についての情報が不足しています。すでに重複して提案されている「NREを解決する方法」の質問を読んだ後、デバッグするために取った手順は何ですか? (私はこれがちょうどよく研究されていない質問だと思う - それで、まだ閉じて投票しないで、ちょうどdownvoting) –

答えて

0
class Team 
{ 
    public List<Fahrer> TeamFahrer { get; set; } 
    public Team() 
    { 
    TeamFahrer = new List<Fahrer>(); 
    } 
} 

クラスのコンストラクタでTeamFahrerを初期化します。

+0

ありがとう!私は間違った終わりで全時間を捜した! –

+0

@AlexHeldあなたの質問を解決した場合は、答えを記入してください。これは、他の開発者が未解決の他の質問に目を通す時間を節約します。 –

関連する問題