C# 类 for XML 序列化

C# Classes for XML Serialize

我正在尝试编写 C# 类,序列化后将形成此 XML 结构:

<?xml version="1.0" encoding="utf-8"?>
<Main>
  <Current>A34-3</Current>
  <Future>
    <Role>10</Role>
    <Route>T14-3</Route>
    <Route>T14-4</Route>
  </Future>
</Main>

这是我到目前为止的结果,但输出(下方)并不完全是我想要的,如上所示。

public class Main
{
  public string Current {get; set;}
  public Future Future {get;set;}
}

public class Future 
{
  public string Role {get;set;};
  public string[] Route {get;set;}
}

这是我序列化时的输出:

<?xml version="1.0" encoding="utf-16"?>
<Main xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <Current>A34-3</Current>
    <Future>
        <Role>10</Role>
        <Route>
          <string>T14-3</string>
          <string>T14-4</string>
        </Route>
    </Future>
</Main>

此外,我在 Visual Studio 中尝试了 xsd.exe 程序,但生成的 类 并不是我想要的。 有人可以帮助我首先列出结构吗?

结构很好。只需使用 [XmlElement] 属性装饰您的数组即可告诉序列化程序如何运行。

[XmlElement]
public string[] Route { get; set; }