将属性从序列化中排除到Json字符串-DynamicJson

本文关键字:Json 字符串 -DynamicJson 排除 属性 序列化 | 更新日期: 2023-09-27 18:20:15

我有一个需要序列化的对象
要序列化的对象:

public class Setting
{
    // Exclude from serialization
    private SettingInfo _key;
    public SettingInfo Key
    {
        get { return _key; }
        set 
        { 
            _key = value;
            Key_Id = _key == null ? 0 : _key.Id;
        }
    }
    // Need to be serialized
    public int Key_Id { get; set; }
    public string Value { get; set; }
}

问题:
是否可以使用DynamicJsonSettingInfo对象(属性Key)从序列化中排除?

  • 我正在使用DynamicJson
  • 当前结果:(包含序列化的Key属性)
    {"Key":{"Id":20,"Type":"System.String","Name":"ExampleSetting"},
    "Key_Id":20,
    "Value":"New Value"}
  • 请求的结果{"Key_Id":20,"Value":"New Value"}

将属性从序列化中排除到Json字符串-DynamicJson

通常您会使用属性属性来完成,但在这个库中没有属性。下面不是很漂亮,但工作解决方案。

var r = DynamicJson.Serialize(s);
DynamicJson tt = DynamicJson.Parse(r);
tt.Delete("Key");
r = tt.ToString();