2016-04-16 2 views
1

まず、英語で間違えば、私の恋人ではありません。C#NullReferenceExceptionリストあり

私はC#で開発していますが、解決方法はわかりません。

「『System.NullReferenceException』種類の未処理の例外がAccountManagement.exeに発生した」

を「追加情報:ラリファレンスD'オブジェn'est PASdéfinieà宇根インスタンスD'未オブジェ」

private List<String> MyLines; 
     public List<String> GetMyLines() 
     { 
      return MyLines; 
     } 
     public void SetOneLines(string LineToInsert) //Insert juste un élément dans ma liste 
     { 
      MyLines.Add(LineToInsert); !!!!! Where the error occurs !!!! 
     } 

この関数はここに呼ばれている: - 翻訳>オブジェクト参照がオブジェクトここ

に設定されていないが、コードで、

public void Identification() 
     { 
      Console.WriteLine("Indiquez votre nom et votre prénom"); 
      string UserLastNameTemp = Console.ReadLine(); 
      string UserNameTemp = Console.ReadLine(); 

      using (StreamReader ReadFileUser = new StreamReader("C:\\Users\\XXX\\Desktop\\user.txt")) 
      { 
       string Line; 
       while ((Line = ReadFileUser.ReadLine()) != null) 
       { 
         Console.WriteLine(Line); 
         SetOneLines(Line); 
       } 

      } 

私はすでにこのタイプのエラーに直面していましたが、私はここに進む方法がわからないのですが、なぜこのエラーが発生するのか分からないためです。D

誰かに私にヒントを教えてもらえますか?

+1

左の緑色のチェックマークを押して、最も受け入れられた回答(または最も早い回答)を受け入れられた回答としてマークしてください。 –

答えて

5

追加する前にリストを初期化する必要があります。

private List<String> MyLines = new List<String>(); 
0

メソッド本体にリストを初期化していません。このようにリストを初期化してください。初期化はそれを参照するためにメモリを割り当てます。

private List<String> MyLines=new List<String>(); 
    public List<String> GetMyLines() 
    { 

     return MyLines; 
    } 

これは、空の文字列リストのみを返します。

+0

これはOPの問題を解決しません、行を設定する前にリストを初期化する必要があります – brykneval

+0

私はメソッドのリストを初期化したと思います。 –

関連する問題