我有一个像下面这样的类,我需要在其中添加项目,但是它显示``对象引用不是对象的瞬间''错误
public class CartTotal
{
public int Id{ get; set; }
public string Name{ get; set; }
public List<Items> items { get; set; }
}
我尝试添加如下内容,
CartTotal cartTotal = new CartTotal();
cartTotal.items.Add(new Items {
ItemId = items.ItemId,
ItemName = items.ItemName,
ItemPrice = items.ItemPrice,
ImageUrl = items.ImageUrl,
ItemCode = items.ItemCode
});
cartTotal.SubTotal = subTotal;
cartTotal.DeliveryCharges = deliveryCharge;
cartTotal.GrandTotal = grandTotal;
答案 0 :(得分:1)
您首先需要创建一个列表并向其中添加项目:
cartoTotal.items = new List<Items>();
那么您就可以有资格写作:
cartTotal.items.Add(new Items {
ItemId = items.ItemId,
ItemName = items.ItemName,
ItemPrice = items.ItemPrice,
ImageUrl = items.ImageUrl,
ItemCode = items.ItemCode
});
使用默认构造函数创建对象的实例时,对象的属性将分配其默认值。对于引用类型(如List<T>
一样,默认值为null)。因此,通过如下创建CartTotal
的实例:
CartTotal cartTotal = new CartTotal();
结果cartTotal.items
为为空。而且,当您调用任何List<T>
方法时,都会导致空引用异常。