JSON.Net:强制所有私有字段和子类中的所有字段进行序列化

JSON.Net:强制所有私有字段和子类中的所有字段进行序列化,第1张

JSON.Net:强制所有私有字段和子类中的所有字段进行序列化

这应该工作:

var settings = new JsonSerializerSettings() { ContractResolver = new MyContractResolver() };var json = JsonConvert.SerializeObject(obj, settings);

public class MyContractResolver : Newtonsoft.Json.Serialization.DefaultContractResolver{    protected override IList<JsonProperty> CreateProperties(Type type, MemberSerialization memberSerialization)    {        var props = type.GetProperties(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance)  .Select(p => base.CreateProperty(p, memberSerialization))         .Union(type.GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance)         .Select(f => base.CreateProperty(f, memberSerialization)))         .ToList();        props.ForEach(p => { p.Writable = true; p.Readable = true; });        return props;    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/zaji/5462603.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存