将基础 class 属性 设置为首先出现在 json 网络 api 输出中 2

set base class property to appear first in json output for web api 2

我有一个 BaseDTO c# class,它只有一个 属性 类型的布尔值,名为 Success

然后我有一个派生的 class,它有一些额外的属性。

当派生的 class 在网络 JSON 中输出 api 时,成功 属性 出现在底部。

我希望它先出现。
我可以在 属性 上设置任何属性来允许这样做吗?

谢谢

无论顺序如何:

An object is an unordered set of name/value pairs.
- http://json.org/

如果您需要对属性进行排序,那么您将不再处理 true JSON 并且不能指望现有的库能够开箱即用地满足此要求。

话虽如此,JSON.NET 允许您实现 IContractResolver,您可以创建它来搜索自定义属性并支持它。可以在 this Stack Overflow answer.

中找到更多详细信息

实际上 this answer on the same question 显示了一个现有的属性,您可以使用它来代替上面的属性。