vb.net – 如何使用json到linq在json.net中创建字典结构

vb.net – 如何使用json到linq在json.net中创建字典结构,第1张

概述我正在使用Json.NET来创建json的定义,其结构可能会发生变化.因此,我无法简单地序列化一个类,并使用Json到 Linq动态创建结构.我在使用JObject,JArray,JProperty等创建以下结构时遇到问题 { 'external_id':'UNIQUE_ID_222222222', 'firstname':'John', 'lastname':'Smith', ' 我正在使用Json.NET来创建Json的定义,其结构可能会发生变化.因此,我无法简单地序列化一个类,并使用Json到 Linq动态创建结构.我在使用JObject,JArray,JProperty等创建以下结构时遇到问题

{  'external_ID':'UNIQUE_ID_222222222','firstname':'John','lastname':'Smith','customFIElds':      {        'custom1':'custom1 val','custom2':'custom2 val','custom3"':'custom3 val'      }  }

我尝试使用以下代码:

Dim Json As New JArray()Dim JsonObj As New JObject( _            New JProperty("external_ID","UNIQUE_ID_222222222"),New JProperty("firstname","John"),New JProperty("lastname","Smith"))Dim JsonCustomFIElds As New JArrayDim JsonCustomObject As New JObjectJsonCustomFIElds.Add(JsonCustomObject)For Each fIEld In CustomFIEldList    JsonCustomObject.Add(New JProperty(fIEld.Label,fIEld.Value))Next    JsonObj.Add(New JProperty("customFIElds",JsonCustomFIElds))Json.Add(JsonContrib)

但是,当我这样做时,我得到了一个Web服务不接受的不同模式

{[  {    "external_ID": "50702","firstname": "John","lastname": "Smithson","customFIElds": [      {        "custom1":"custom1 val","custom2":"custom2 val","custom3":"custom3 val"      }    ]  }]}

我认为我应该直接向JArray添加属性,但这样做会导致运行时异常.

我看到了一个类似的模式,当您反序列化一个Dictionary(String,String)对象时,我不会真的想将自定义字段添加到字典然后反序列化它们.必须可以使用上述表示法创建它们.

解决方法 您不需要JArray,而是使用JObject

以下代码是C#,但你可以搞清楚

JObject jObject = new JObject();jObject.Add(new JProperty("external_ID","UNIQUE_ID_222222222"));jObject.Add(new JProperty( "firstname","John" ));jObject.Add(new JProperty( "lastname","Smith" ));JObject customFIElds = new JObject();//Your loopcustomFIElds.Add( "custom1","custom1 val" );customFIElds.Add( "custom2","custom2 val" );customFIElds.Add( "custom3","custom3 val" );jObject.Add( new JProperty( "customFIElds",customFIElds ) );

让我知道这是否有效

总结

以上是内存溢出为你收集整理的vb.net – 如何使用json到linq在json.net中创建字典结构全部内容,希望文章能够帮你解决vb.net – 如何使用json到linq在json.net中创建字典结构所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1222342.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-05
下一篇2022-06-05

发表评论

登录后才能评论

评论列表(0条)

    保存