zoukankan      html  css  js  c++  java
  • .net core 3.0中的Json API

    在.net core 3.0中,内置了一套新的json api,主要用于去除asp.net core对json.net的依赖,同时也提供了更好的性能(直接处理 UTF-8,而无需转码到 UTF-16)。虽然没有正式发布,随着几个preview版本下来,已经有一个功能比较完善的版本了,本文这里就简单的介绍一下它的用法: 

    对象序列化为JSON

    将一个对象序列化为Json可以使用JsonSerializer类,它类似与json.net中的JsonConvert类,使用方式如下。 

    class WeatherForecast
    {
        public DateTimeOffset Date         { get; set; }
        public int            TemperatureC { get; set; }
        public string         Summary      { get; set; }
    }
     
    string Serialize(WeatherForecast value)
    {
        return JsonSerializer.ToString(value);
    }

     将Json反序列化为对象

    反序列化的方式也和Json.net非常类似 

    string Serialize(WeatherForecast value)
    {
        var options = new JsonSerializerOptions
        {
            WriteIndented = true
        };
     
        return JsonSerializer.ToString(value, options);
    }

    其它的更多用法可以参考微软的官方博客:Try the new System.Text.Json APIs

    总体试用下来的感觉是,基本功能都有,但和json.net比起来高级功能还有许多缺失,但足以满足大部分场景下的需要了。加上是系统内置的,用起来还是非常方便的。相信未来会有越来越多的使用json.net的场景会向内置的json框架迁移的。

    参考文章:

  • 相关阅读:
    java代码split分割数字类
    P1330 封锁阳光大学
    1022 舞会2
    1626 爱在心中
    P2024 食物链(two)
    P1196 银河英雄传说
    P1892 团伙
    P1546 最短网络(最小生成树)
    烦人的幻灯片(拓扑)
    例4.15 奖金(拓扑排序)
  • 原文地址:https://www.cnblogs.com/TianFang/p/11037246.html
Copyright © 2011-2022 走看看