1

我使用 .NET XmlSerializer 简单地序列化具有 Items 作为集合的 Person;

class Item
{
   Name
   Price
}

class Person
{
   Name
   List Items<Item>
}

一切都很好...我使用 XmlWriterSettings 缩进我的 xml 文件。输出是:

   <?xml version="1.0" encoding="utf-8"?>
<Person xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <name>TestName</name>
  <Items>
    <Item>
      <name>one</name>
      <price>0</price>
    </Item>
    <Item>
      <name>two</name>
      <price>1</price>
    </Item>
  </Items>
</Viewport>

但我想要的是:

<?xml version="1.0" encoding="utf-8"?>
<Person xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <name>TestName</name>
  <Items>
     <Item name="one" price="0" />
     <Item name="two" price="1" />
  </Items>
</Viewport>

不久,而不是

<Item>
      <name>one</name>
      <price>0</price>
 </Item>

我想把xml写成

<Item name="one" price="0" />

我如何在 .NET(C#) 中做到这一点?

4

2 回答 2

2
class Item
{
    [System.Xml.Serialization.XmlAttributeAttribute("name")]
    string Name;
    [System.Xml.Serialization.XmlAttributeAttribute("price")]
    string Price;
}
于 2012-07-12T12:19:41.167 回答
0

Name_ Price_XmlAttribute

于 2012-07-12T11:20:59.650 回答