如何将DefaultValueAttribute用于object或MyType类型的属性?

时间:2013-11-21 04:21:22

标签: c# json serialization json.net

我正在使用Json.net将对象转换为json,我使用DefaultValueHandling中的Json.net选项删除具有默认值的属性。我对原始类型(如int,string,bool等)很容易做到,但它不知道如何使用DefaultValueHandling来表示对象类型或用户定义类型的属性。

请帮我解决这个问题,

示例 对于原始类型,我确实喜欢这个

[JsonProperty("allowPaging")]
[DefaultValue(false)]
public bool AllowPaging
{
    get { return this.allowPaging; }
    set { this.allowPaging = value; }
}

如何为对象类型的属性执行此操作,

[JsonProperty("data")]
public object Data
{
    get { return this.data; }
    set { this.data= value; }
}

2 个答案:

答案 0 :(得分:0)

对于object,默认值为null。那么,如果行为不会改变,为什么要删除它呢?此属性仅适用于值类型和基元

答案 1 :(得分:0)

下面将讨论和回答相同的概念。请看看。 link