使用JSON.NET将JSON转换为XML:仅当元素不为null时才将元素转换为属性

时间:2015-05-07 17:05:07

标签: c# xml json json.net

我们正在使用JSON.NET将分层对象转换为JSON,然后从那里转换为XML。

  

我们知道反对这样做的论点,但有几个   支持它的论据,我们已经尝试了很多东西来到这里。

我们遇到的一个问题是偶尔属性会有一个空值。当property is getting converted to an element时,没关系,但是当它是属性时,我们会得到NullReferenceException。我们的偏好是将空值转换为空字符串,但是将它们完全取出是可以接受的。

我们如何处理这个?

1 个答案:

答案 0 :(得分:0)

我们得到的所有NullReferenceException项都在string属性上进行了一些分析。如果字符串确实尚未初始化,我会将 getter 中的以下内容返回string.Empty而不是null这不是一个优雅的解决方案,但它适用于我们的情况。

    [JsonProperty(PropertyName = "@Code")]
    public string ProductCode
    {
        get { return _productCode == null ? string.Empty : _productCode ; }
        set { _productCode = value.Trim(); }
    }