Json.Net如何将null反序列化为空字符串?

时间:2013-02-28 12:52:09

标签: asp.net c#-4.0 json.net

我的class_中有string属性,例如

        [DataMember]
        [JsonProperty(PropertyName = "email")]
        [StringLength(40, ErrorMessage = "The Mobile value cannot exceed 40 characters. ")]
        public string Email { get; set; }

由于某种原因,在Convert.Deserialize过程中,我需要在此属性中使用空字符串而不是null,以防该值未在JSON对象中设置。 怎么做?

1 个答案:

答案 0 :(得分:5)

您可以使用DefaultValue属性。

将其装饰为

[DataMember]
[JsonProperty(PropertyName = "email", DefaultValueHandling = DefaultValueHandling.Populate)]
[StringLength(40, ErrorMessage = "The Mobile value cannot exceed 40 characters. ")]
[DefaultValue("")]
public string Email { get; set; }