面向云技术架构 - 痴者工良

  • 首页
  • 工良写的电子书
    • kubernetes 教程
    • 从 C# 入门 Kafka
    • 多线程和异步
    • 动态编程-反射、特性、AOP
    • 表达式树
  • 本站文章导航
  • 隐私政策
愿有人陪你颠沛流离
遇到能让你付出的事物或者人,都是一种运气。
能遇到,就该珍惜。或许你们最终没能在一起,但你会切实地感受到力量。
正因为这样,那段相遇才变得有价值,才没有辜负这世间的每一段相遇。
  1. 首页
  2. .NET
  3. 正文

System.Text.Json 序列化配置

2021年8月12日 1725点热度 2人点赞 0条评论
内容纲要

常用的 Json 序列化配置如下:


        // json 序列化配置
        private static readonly JsonSerializerOptions JsonSetting = new JsonSerializerOptions()
        {
            // 首字母小写
            PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
            // 格式化输出,即自动换行、加上空格
            WriteIndented = true,
        };

在序列化的时候使用:

JsonSerializer.Serialize(obj, JsonSetting)

序列化配置的其他属性:

属性

AllowTrailingCommas 获取或设置一个值,该值指示要反序列化的 JSON 有效负载中是否允许(和忽略)对象或数组中 JSON 值的列表末尾多余的逗号。
Converters 获取已注册的用户定义的转换器的列表。可将数值转换为字符串等;
DefaultBufferSize 获取或设置创建临时缓冲区时要使用的默认缓冲区大小(以字节为单位)。
DefaultIgnoreCondition 指定一个条件,用于确定何时在序列化或反序列化过程中忽略具有默认值的属性。
DictionaryKeyPolicy 将 字典的 Key 首字母生成小写
Encoder 获取或设置要在转义字符串时使用的编码器,或为 null(要使用默认编码器的话)。
IgnoreNullValues 获取或设置一个值,该值确定是否 null 在序列化过程中忽略值。 默认值为 false。
IgnoreReadOnlyFields 确定序列化过程中是否忽略只读字段。 如果某字段用 readonly 关键字进行标记,则该字段为只读字段。 默认值为 false。
IgnoreReadOnlyProperties 获取一个值,该值确定序列化过程中是否忽略只读属性。 默认值为 false。
IncludeFields 确定是否在序列化和反序列化期间处理字段。 默认值为 false。
MaxDepth 获取或设置序列化或反序列化 JSON 时允许的最大深度,默认值 0 表示最大深度为 64。
NumberHandling 指定序列化或反序列化时应如何处理数字类型。
PropertyNameCaseInsensitive 获取或设置一个值,该值确定在反序列化过程中属性名称是否使用不区分大小写的比较。 默认值为 false。
PropertyNamingPolicy 生成 Json 时首字母小写。
ReadCommentHandling 定义反序列化过程中如何处理注释。
ReferenceHandler 配置在读取和写入 JSON 时如何处理对象引用。
WriteIndented 格式化输出 Json,即自动换行、空格、缩进。
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可
标签: json system text 序列化 配置
最后更新:2021年8月12日

痴者工良

高级程序员劝退师

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

文章目录
  • 属性

COPYRIGHT © 2022 whuanle.cn. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

粤ICP备18051778号

粤公网安备 44030902003257号