我在我的MVC 4程序中使用Json.net.
我做到了
string j = JsonConvert.SerializeObject(item);
现在我想添加一个额外的属性,如“feeClass”:“A”到j.
如何使用Json.net来实现?
你有几个选择.
@Manvik建议的最简单的方法是简单地向你的类添加另一个属性,并在序列化之前设置它的值.
如果你不想这样做,那么最简单的方法是将对象加载到JObject中,追加新的属性值,然后从中写出JSON.这是一个简单的例子:
class Item { public int ID { get; set; } public string Name { get; set; } } class Program { static void Main(string[] args) { Item item = new Item { ID = 1234,Name = "FooBar" }; JObject jo = JObject.FromObject(item); jo.Add("feeClass","A"); string json = jo.ToString(); Console.WriteLine(json); } }
以上是上面的输出:
{ "ID": 1234,"Name": "FooBar","feeClass": "A" }
另一种可能性是为您的Item类创建一个自定义的JsonConverter
,并在序列化过程中使用它. JsonConverter允许您完全控制在序列化过程中写入的内容.您可以添加属性,禁止属性,更改属性名称,甚至可以写出不同的结构.对于这种特殊情况,我认为这可能是过度的,但这是另一个选择.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。