相关疑难解决方法(0)

XML序列化 - 禁用渲染数组的根元素

我可以以某种方式禁用渲染集合的根元素吗?

此类具有序列化属性:

[XmlRoot(ElementName="SHOPITEM", Namespace="")]
public class ShopItem
{
    [XmlElement("PRODUCTNAME")]
    public string ProductName { get; set; }       

    [XmlArrayItem("VARIANT")]
    public List<ShopItem> Variants { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

生成这个XML:

<SHOPITEM xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <PRODUCTNAME>test</PRODUCTNAME>
      <Variants>
          <VARIANT>
              <PRODUCTNAME>hi 1</PRODUCTNAME>
          </VARIANT>
          <VARIANT>
              <PRODUCTNAME>hi 2</PRODUCTNAME>
          </VARIANT>           
      </Variants>        
</SHOPITEM>
Run Code Online (Sandbox Code Playgroud)

我不想要<Variants>元素.我必须做什么?

另外我在根元素中不需要xsi和xsd命名空间...

c# serialization attributes

115
推荐指数
2
解决办法
5万
查看次数

标签 统计

attributes ×1

c# ×1

serialization ×1