XmlSerializer序列化空/空字符串

时间:2019-05-02 08:29:54

标签: c# xml xmlserializer

我如何序列化空字符串/空字符串。

因为现在它会序列化为类似<Element />

的元素

相反,我希望它成为这样的元素<Element></Element>

现在我使用StringWriter将其序列化为XML。

这是我的代码:

using (var sw = new Utf8StringWriter())
{
    xmlSerializer.Serialize(sw, obj);
    string serializedContent = sw.ToString();
}

2 个答案:

答案 0 :(得分:0)

您好,我不知道您的实现方式,但是您可以尝试使用以下选项配置序列化器:

w.Formatting = Formatting.Indented;

它可能与自定义XmlWriter

相同

答案 1 :(得分:0)

您可以使用XmlElement属性并指定该值应为可为空。然后,将使用正确的nil值对空元素进行序列化。

例如:

var data = {
     labels:["2015", "2016", "test"],
     datasets:[
     {
         label: "Data1",
         fill: false,
         lineTension: 0.1,
         borderColor: "red",
         pointHoverBackgroundColor: "yellow",
         data: [
            {x:"2015",y:5},
            {x:"test",y:10}
         ]
      },
      {
         label: "Data2",
         fill: false,
         lineTension: 0.1,
         borderColor: "blue",
         borderCapStyle: 'square',
         pointHoverBackgroundColor: "yellow",
         data: [
             {x:"2015",y:5},
             {x:"2016",y:10}
         ],
         spanGaps: true,
      }
   ]
};