分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

Newtonsoft.Json 全部配置

发布时间:2023-09-06 01:44责任编辑:沈小雨关键词:配置

需要在序列化时候,忽略掉某些字段,对Newtonsoft.Json进行全局配置,如下:

1. 自定 ContractResolver

 ?public class MyContractResolver : DefaultContractResolver ???{ ???????protected override IList<JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization) ???????{ ???????????if (!typeof(EntityBase).IsAssignableFrom(type)) ???????????{ ???????????????return base.CreateProperties(type, memberSerialization); ???????????} ???????????IList<JsonProperty> props = base.CreateProperties(type, memberSerialization); ???????????foreach (var prop in props) ???????????{ ???????????????if (prop.DeclaringType.FullName != null && prop.DeclaringType.FullName.StartsWith("PWMIS.DataMap.Entity.EntityBase")) ???????????????{ ???????????????????prop.Ignored = true; ???????????????} ???????????} ???????????return props; ???????} ???}

  2. 应用程序启动的时候对JsonConvert进行默认配置:

 ???JsonSerializerSettings setting = new JsonSerializerSettings() ???????????{ ???????????????Formatting = Formatting.None, ???????????????ContractResolver = new MyContractResolver() ???????????}; ???????????JsonConvert.DefaultSettings = new Func<JsonSerializerSettings>(() => ???????????{ ???????????????//日期类型默认格式化处理 ???????????????setting.DateFormatHandling = Newtonsoft.Json.DateFormatHandling.MicrosoftDateFormat; ???????????????setting.DateFormatString = "yyyy-MM-dd HH:mm:ss"; ???????????????//空值处理 ???????????????setting.NullValueHandling = NullValueHandling.Ignore; ???????????????return setting; ???????????});

  

Newtonsoft.Json 全部配置

原文地址:https://www.cnblogs.com/rash/p/8489666.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved