如何使用 C# 进行条件序列化 - NewtonSoft.Json

2024-03-31

我正在使用 NewtonSoft.Json 进行 json 序列化

public class CommonBase
{
    [JsonProperty(PropertyName = "u_customer_id")]
    public long CustomerId { get; set; }
}

我想做一个条件序列化,这样如果CustomerId值为0,我想设置一个空白值CustomerId在 json 序列化期间。自从CommonBase是一个基类,我无法更改数据类型long to string.

我怎样才能实现这个目标?


你的问题标题中几乎已经有了答案。您正在寻找的是条件属性序列化 http://www.newtonsoft.com/json/help/html/conditionalproperties.htm

您只需要添加这样命名的方法:ShouldSerialize + PropertyName。在你的情况下,方法应该如下所示:

public bool ShouldSerializeCustomerId()
{
   return SomeCondition;
}

附注如果您正在创建基类,您可能想要有抽象类。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 C# 进行条件序列化 - NewtonSoft.Json 的相关文章

随机推荐