无法在C#.net中绑定模型类中的数据,将动态数据绑定到字段时出错

无法在C#.net中绑定模型类中的数据,将动态数据绑定到字段时出错,c#,json,class,C#,Json,Class,嗨,我无法绑定C#类字段中的数据。。 获取错误“对象引用未设置为对象的实例”。 这是我的C#类,如下所示: public partial class AccessCodeReqBody { [JsonProperty("scenarioKey")] public string ScenarioKey { get; set; } [JsonProperty("destinations")]

嗨,我无法绑定C#类字段中的数据。。 获取错误“对象引用未设置为对象的实例”。 这是我的C#类,如下所示:

public partial class AccessCodeReqBody
    {
        [JsonProperty("scenarioKey")]
        public string ScenarioKey { get; set; }

        [JsonProperty("destinations")]
        public Destination[] Destinations { get; set; }

        [JsonProperty("whatsApp")]
        public WhatsApp WhatsApp { get; set; }
    }

    public partial class Destination
    {
        [JsonProperty("to")]
        public To To { get; set; }
    }

    public partial class To
    {
        [JsonProperty("phoneNumber")]
        public string PhoneNumber { get; set; }
    }

    public partial class WhatsApp
    {
        [JsonProperty("templateName")]
        public string TemplateName { get; set; }

        [JsonProperty("templateData")]
        public string[] TemplateData { get; set; }

        [JsonProperty("language")]
        public string Language { get; set; }
    }
{
   "scenarioKey":"696BDB51C0ACF9E65B86D3E1D08A0084",
   "destinations":[
      {
         "to":{
            "phoneNumber":"919910666888"
         }
      }
   ],
   "whatsApp":{
      "templateName":"access_code",
      "templateData":[
         "Jennifer",
         "Demo",
         "123456"
      ],
      "language":"en"
   }
}
&请求如下所示:

public partial class AccessCodeReqBody
    {
        [JsonProperty("scenarioKey")]
        public string ScenarioKey { get; set; }

        [JsonProperty("destinations")]
        public Destination[] Destinations { get; set; }

        [JsonProperty("whatsApp")]
        public WhatsApp WhatsApp { get; set; }
    }

    public partial class Destination
    {
        [JsonProperty("to")]
        public To To { get; set; }
    }

    public partial class To
    {
        [JsonProperty("phoneNumber")]
        public string PhoneNumber { get; set; }
    }

    public partial class WhatsApp
    {
        [JsonProperty("templateName")]
        public string TemplateName { get; set; }

        [JsonProperty("templateData")]
        public string[] TemplateData { get; set; }

        [JsonProperty("language")]
        public string Language { get; set; }
    }
{
   "scenarioKey":"696BDB51C0ACF9E65B86D3E1D08A0084",
   "destinations":[
      {
         "to":{
            "phoneNumber":"919910666888"
         }
      }
   ],
   "whatsApp":{
      "templateName":"access_code",
      "templateData":[
         "Jennifer",
         "Demo",
         "123456"
      ],
      "language":"en"
   }
}
&c#类中绑定数据的代码如下,其中绑定电话号码和模板名称时出错:

            AccessCodeReqBody reqbody = new AccessCodeReqBody();
            reqbody.ScenarioKey = "51F5865AE296FAE86614EED";

           

            reqbody.Destinations.To.PhoneNumber = text1;
            reqbody.WhatsApp.TemplateName = "access_code";
            reqbody.WhatsApp.Language = "en";
            reqbody.WhatsApp.TemplateData = GetData(text2.ToString());

提前感谢。

课程结构正确。使用此代码

AccessCodeReqBody accessCodeReqBody = JsonConvert.DeserializeObject<AccessCodeReqBody>(json);
AccessCodeReqBody AccessCodeReqBody=JsonConvert.DeserializeObject(json);

似乎是一个足够简单的解决方案

AccessCodeReqBody reqbody = new AccessCodeReqBody();
reqbody.ScenarioKey = "51F5865AE296FAE86614EED";

// Initialize your WhatsApp object. It is null if you don't
reqbody.WhatsApp = new WhatsApp();
//reqbody.Destinations.To.PhoneNumber = text1;
reqbody.WhatsApp.TemplateName = "access_code";
reqbody.WhatsApp.Language = "en";
reqbody.WhatsApp.TemplateData = GetData(text2.ToString());

没有复制。我必须对你的班级进行反序列化。我们可以了解更多信息/背景吗?您的错误消息看起来像
NullReferenceException
“对象引用未设置为对象的实例”,因此导致该错误的行在哪里。你的标题是关于动态的,我知道你没有初始化
reqbody.Destination
<代码>reqbody.Destination=新目的地[]{},如果你想添加,你可能需要一个目的地列表而不是数组。如果有人有dupe标志,谢谢meysam asadi,但是我在c#class字段“电话号码”和“模板名”中绑定数据的问题,我已经编辑了我的问题供你参考。我不明白你的意思。是否要序列化?或者将电话号码绑定到templatename做什么?是的,我想绑定电话号码和模板名称,在将电话号码和其他数据绑定到c#类后,我会将该类转换为json。转到此答案的数组/数组元素:。它与json无关。您的错误消息是关于
NullReferenceException
,您忘记初始化内容。