>用属性求解JSON儿童属性映射
本文使用属性来探索映射嵌套的JSON属性到更简单的类属性,增强了JSON避难所的灵活性。
标准挑选化的挑战:
>> newtonsoft.json的DeserializeObject
方法有效地将JSON转换为对象,但它缺乏对复杂JSON结构中的儿童属性的直接支持。
>解决方案:
> >将JSON字符串解析为
。JObject
创建一个初始对象。ToObject()
提取特定的儿童财产价值。SelectToken()
方法2:自定义JSONCONVERTER:
<code class="language-csharp">string json = "{ \"picture\": { \"id\": 123456, \"data\": { \"type\": \"jpg\", \"url\": \"http://www.someplace.com/mypicture.jpg\" } } }"; JObject jo = JObject.Parse(json); Person p = jo.ToObject<Person>(); p.ProfilePicture = (string)jo.SelectToken("picture.data.url");</code>
开发一个自定义从
>。JsonConverter
>。
JsonConverter
用ReadJson
>使用JObject
>属性,将所需的属性路径指定为属性的名称。[JsonConverter]
[JsonProperty]
摘要:
>两种技术都提供了用于将嵌套的JSON属性映射到更简单的类属性的解决方案,从而提高了JSON避难所的灵活性。 最佳方法取决于特定于项目的需求和偏好。以上是属性可以解决 JSON 子属性映射挑战吗?的详细内容。更多信息请关注PHP中文网其他相关文章!