c# Json + Newtonsoft.Json 使用

一:什么是 Json
Json ,全称 JavaScript Object Notation, 即 JavaScript 对象标记法,是一种轻量级的数据交换格式。
采用完全独立于编程语言的文本格式来存储和表示数据, 不仅容易阅读和编写,而且也容易解析和生成,有效的提升了网络传输效率,在与后端的数据交互中有较为广泛的应用。
通俗的说,Json 就是按照一定规则排列的字符串。
二:Json 的用途
1)服务器数据的交互。
2)配置文件。
3)手机数据的交互。
通俗的说,Json 不仅可以保存数据,还可以与服务器间传递数据。
三:Json 的序列化与反序列化
1)序列化:将“对象”转换成“字节序列”的过程。
2)反序列化:将“字节序列”恢复成“对象”的过程。
四:Json 语法规则
1)数据在“名称/值对”中。名称(name)置于双引号中,后面写一个冒号,然后是值,值(value)可以是字符串、数字、布尔值、null、对象和数组。
2)并列数据间由逗号分隔,最后一个数据不需要加逗号。
3)花括号 { } 保存对象(Object),对象可以包含多个“名称/值对”。
4)方括号 [ ] 保存数组(Array),数组可以包含多个对象。
五:Json 举例:
{
    "name": "中国",
    "province": [{
        "name": "黑龙江",
        "cities": {
            "city": ["哈尔滨", "大庆"]
        }
    }, {
        "name": "广东",
        "cities": {
            "city": ["广州", "深圳", "珠海"]
        }
    }, {
        "name": "台湾",
        "cities": {
            "city": ["台北", "高雄"]
        }
    }, {
        "name": "新疆",
        "cities": {
            "city": ["乌鲁木齐"]
        }
    }]
}
六:校验工具
https://www.sojson.com/
七:Newtonsoft.Json 使用
1. Nuget 中查找 Newtonsoft.Json 选择稳定版本安装

2.  /// <summary>
    /// json 转 dynamic
    /// </summary>
    /// <param name="value"></param>
    /// <returns></returns>
    public static dynamic ToDynamic(this string value)
    {
        try
        {
            return JsonConvert.DeserializeObject<dynamic>(value);
        }
        catch (Exception ex)
        {
            return null;
        }
    }
    
    /// <summary>
    /// object 转 Json 转换错误返回 string.empty
    /// </summary>
    /// <param name="obj"></param>
    /// <returns></returns>
    public static string ToJson(this object obj)
    {
        try
        {
            JsonSerializerSettings settings = new JsonSerializerSettings();
            settings.Formatting = Formatting.Indented;
            settings.DefaultValueHandling = DefaultValueHandling.Include;
            settings.NullValueHandling = NullValueHandling.Include;
            return JsonConvert.SerializeObject(obj, settings);
        }
        catch (Exception ex)
        {
            return string.Empty;
        }
    }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值