为了账号安全,请及时绑定邮箱和手机立即绑定

C# - 如何发布列表

C# - 如何发布列表

C#
智慧大石 2022-01-09 10:57:49
所以我有这段代码可以使用 c# 发布JSON data到我的REST APItry    {        tempquantityofmenu = entQuantity.Text;        CustList custo = new CustList();        CustomerOrder custo1 = new CustomerOrder()           {              menu_name = tempnameofmenu,              menu_quantity = tempquantityofmenu,              menu_code = tempcodeofmenu            };        custo.CUSTOMER_ORDER.Add(custo1);        await Navigation.PushAsync(new OrdernowCategory());       }        catch(Exception ex)        {            DisplayAlert("error", ex.ToString(), "OK");        }然后我得到这个 System.NullReferenceExeption: Object Reference not set to an instance of an objectpublic class CustomerOrder{    public string menu_name { get; set; }    public string menu_quantity { get; set; }    public string menu_code { get; set; }}public class CustList{    public List<CustomerOrder> CUSTOMER_ORDER { get; set; }}我认为我的问题是当向CUSTOMER_ORDER内部添加项目时try catch不起作用
查看完整描述

2 回答

?
德玛西亚99

TA贡献1770条经验 获得超3个赞

因为您没有为CUSTOMER_ORDER属性创建实例,所以CUSTOMER_ORDER是引用类型,null默认情况下具有值。


如果你想解决它,你可以给CUSTOMER_ORDER一个这样的实例集合。


CustList custo = new CustList() { 

     CUSTOMER_ORDER = new List<CustomerOrder>() 

};


查看完整回答
反对 回复 2022-01-09
?
喵喔喔

TA贡献1735条经验 获得超5个赞

你可以


public class CustList

{

    public List<CustomerOrder> CUSTOMER_ORDER { get; set; } = new List<CustomerOrder>();

}

或者


public class CustList

{

    public List<CustomerOrder> CUSTOMER_ORDER { get; set; } 


    public CustList()

    {

        CUSTOMER_ORDER = new List<CustomerOrder>();

    }

}

或者


custo.CUSTOMER_ORDER = new List<CustomerOrder>();

custo.CUSTOMER_ORDER.Add(custo1);

为了这个世界上所有整洁的事物的爱,不要用大写和下划线命名你的变量/属性/或andything


查看完整回答
反对 回复 2022-01-09
  • 2 回答
  • 0 关注
  • 163 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信