C# dynamic类型序列化和反序列化之Newtonsoft.Json

原文: C# dynamic类型序列化和反序列化之Newtonsoft.Json

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011127019/article/details/76339170

一、说明

1.Newtonsoft.Json 中的Linq To Json中提供了方便的json数据查询、修改等操作。

例如:JObject,JArray

2.在JObject.FromObject()或JArray.FromObject()中也提供了对dynamic类型的支持。

二、dynamic转json字符串处理

using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
1.使用JObject对象

dynamic obj = new JObject();
obj.name = "张三丰";
obj.age = 10;
obj.birthday = DateTime.Now;

Console.WriteLine(obj.ToString());

输出结果:

{
  "name": "张三丰",
  "age": 10,
  "birthday": "2017-07-29T16:39:47.4549601+08:00"
}

2.使用JObject.FromObject()

dynamic obj = new System.Dynamic.ExpandoObject();
obj.name = "张三丰";
obj.age = 10;
obj.birthday = DateTime.Now;

string result = JObject.FromObject(obj).ToString();
Console.WriteLine(result);
输出结果:同上

三、将json字符串发序列化为dynamic类型

string json = @"
            {
            'Title': 'Json.NET is awesome!',
            'Author': {
                'Name': 'James Newton-King',
                'Twitter': '@JamesNK',
                'Picture': '/jamesnk.png'
            },
            'Date': '2013-01-23T19:30:00',
            'BodyHtml': '<h3>Title!</h3>\r\n<p>Content!</p>'
            }
        ";
dynamic blogPost = JObject.Parse(json);
string title = blogPost.Title;
Console.WriteLine(title);      //输出:Json.NET is awesome!
Console.WriteLine(blogPost.Date); //输出:2013/1/ 23 19:30:00

官方示例:

Querying JSON with dynamicCreate JSON with dynamic

更多:

C# Newtonsoft.Json JsonSerializerSettings配置序列化操作

C#Json序列化、反序列化之Dictionary 字典类型

C# Newtonsoft.Json之LINQ To Json实例(二)

posted on 2019-08-02 14:29 NET未来之路 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/11288382.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值