使用 JSON.NET 的序列化字段的顺序

Order of serialized fields using JSON.NET(使用 JSON.NET 的序列化字段的顺序)
本文介绍了使用 JSON.NET 的序列化字段的顺序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

有没有办法使用 JSON.NET 指定序列化 JSON 对象中的字段顺序?

Is there a way to specify the order of fields in a serialized JSON object using JSON.NET?

指定一个字段总是首先出现就足够了.

It would be sufficient to specify that a single field always appear first.

推荐答案

支持的方法是在要为其设置顺序的类属性上使用 JsonProperty 属性.阅读 JsonPropertyAttribute 订单文档了解更多信息.

The supported way is to use the JsonProperty attribute on the class properties that you want to set the order for. Read the JsonPropertyAttribute order documentation for more information.

JsonProperty 传递一个 Order 值,序列化程序将处理其余的工作.

Pass the JsonProperty an Order value and the serializer will take care of the rest.

 [JsonProperty(Order = 1)]

这个很像

 DataMember(Order = 1) 

System.Runtime.Serialization 天.

这是来自@kevin-babcock 的重要说明

Here is an important note from @kevin-babcock

... 仅当您在所有其他属性上设置大于 1 的顺序时,将顺序设置为 1 才有效.默认情况下,任何没有 Order 设置的属性都将被赋予 -1 的顺序.所以你必须要么给出所有序列化的属性和顺序,要么将你的第一个项目设置为 -2

... setting the order to 1 will only work if you set an order greater than 1 on all other properties. By default any property without an Order setting will be given an order of -1. So you must either give all serialized properties and order, or set your first item to -2

这篇关于使用 JSON.NET 的序列化字段的顺序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

Force JsonConvert.SerializeXmlNode to serialize node value as an Integer or a Boolean(强制 JsonConvert.SerializeXmlNode 将节点值序列化为整数或布尔值)
Using JSON to Serialize/Deserialize TimeSpan(使用 JSON 序列化/反序列化 TimeSpan)
Could not determine JSON object type for type quot;Classquot;(无法确定类型“Class的 JSON 对象类型.)
How to deserialize a JSONP response (preferably with JsonTextReader and not a string)?(如何反序列化 JSONP 响应(最好使用 JsonTextReader 而不是字符串)?)
how to de-serialize JSON data in which Timestamp it-self contains fields?(如何反序列化时间戳本身包含字段的JSON数据?)
JSON.Net custom contract serialization and Collections(JSON.Net 自定义合约序列化和集合)