如何将字符串添加到列表<string>? List <string>是Model In Model

时间:2017-12-09 13:09:48

标签: c# string list

Thsi Is My Model:

public VoyageReservedViewModel{
               public List<string> preFactorID { get; set; }
                public int Code{ get; set; } }

我想将字符串添加到列表&lt; String&gt;通过Thsi Code:

 VoyageReservedViewModel Obj = new VoyageReservedViewModel();
      foreach (var item in result)
      {    
          Obj.preFactorID.Add("My String Value");
      }

但我重新设计了这个错误:

  

发生了'System.NullReferenceException'类型的异常   Sample.dll但未在用户代码中处理

3 个答案:

答案 0 :(得分:2)

您需要实例化 = 0 ,这是一种 preFactorID

List<string>

答案 1 :(得分:1)

您实例化了VoyageReservedViewModel但从未实例化其列表属性preFactorID。如果尚未初始化,则无法添加到列表中。

答案 2 :(得分:1)

显然,val ageCheckedList = if (checkAge) list.filter(_ > 18) else list 属性为空!你需要初始化它,如下所示:

preFactorID

或者像这样使用object initializer

 VoyageReservedViewModel Obj = new VoyageReservedViewModel();
 Obj.preFactorID  = new List<string>();

更新我想在此答案中添加一些内容。如果您只是在一个特定位置插入此列表,如果您只是在此VoyageReservedViewModel Obj = new VoyageReservedViewModel{ preFactorID = new List<string>() }; 循环中添加这些ID,并且您不想在其他任何位置编辑其值。我建议您使用其他类型的foreach,它会让您的代码更具可移植性&#39;使用这种通用的便携式。所以你的代码变成了:

IEnumerable<string>