Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 是什么导致此代码中出现nullreference异常?_C#_Asp.net - Fatal编程技术网

C# 是什么导致此代码中出现nullreference异常?

C# 是什么导致此代码中出现nullreference异常?,c#,asp.net,C#,Asp.net,我尝试向会话添加新的“顺序”。我开始在我的Global.aspx文件的session\u Start下创建会话: Session.Add("Cart", new WebShopData.Order()); 在我的登录页面,我创建了一个新会话: Session["userID"] = "User"; ((Order)Session["Cart"]).UserID = userID; 然后在我的店铺页面上,我想向会话添加内容: if ((Order)Session["Cart

我尝试向会话添加新的“顺序”。我开始在我的Global.aspx文件的session\u Start下创建会话:

Session.Add("Cart", new WebShopData.Order());
在我的登录页面,我创建了一个新会话:

 Session["userID"] = "User";
        ((Order)Session["Cart"]).UserID = userID;
然后在我的店铺页面上,我想向会话添加内容:

 if ((Order)Session["Cart"] != null)
((Order)Session["Cart"]).OrderRow.Add(new OrderRows({ArticleID = 2, Quantity = 1) });
在最后一行,我得到att nullreference异常。为什么会这样


以下是我的两门课:

   public class Order
   {
    public List<OrderRows> OrderRow { get; set; }
    public string Address { get; set; }
    public string City { get; set; }
    public string Zip { get; set; }
    public int UserID { get; set; }
   }

  public class OrderRows
  {
    public int ArticleID { get; set; }
    public int Quantity { get; set; }

    public override string ToString()
    {
            return string.Format("Artikel: {0}, Antal: {1}.\n", ArticleID, Quantity);
    }
  }
公共类秩序
{
公共列表医嘱行{get;set;}
公共字符串地址{get;set;}
公共字符串City{get;set;}
公共字符串Zip{get;set;}
public int UserID{get;set;}
}
公共类OrderRows
{
公共int ArticleID{get;set;}
公共整数数量{get;set;}
公共重写字符串ToString()
{
返回string.Format(“Artikel:{0},Antal:{1}.\n”,ArticleID,Quantity);
}
}

创建新订单时,已归档的OrderRow为空。必须在Order构造函数上初始化Order行。

在使用OrderRow之前,需要创建一个实例。我建议在构造函数中这样做

将此添加到您的订单类

public class Order {
     ....other stuff...

    public Order() {
      OrderRow = new List<OrderRows>();
    }
}
公共类秩序{
……其他东西。。。
公共秩序(){
OrderRow=新列表();
}
}