【发布时间】:2018-12-23 03:41:20
【问题描述】:
我正在尝试将一个 xml 文档反序列化为 c# 类
我遵循了那个教程,但它在我的情况下不起作用:https://stackoverflow.com/a/364401/10824921
但我的 listPersons 仍然是空的
有 XML :
<?xml version="1.0" encoding="utf-8"?>
<PersonList>
<Person id="0" tag="ASD">
<Name>Smith</Name>
</Person>
<Person id="1" tag="FDS">
<Name>Johny</Name>
</Person>
</PersonList>
有C#代码:
[Serializable()]
[XmlRoot("PersonList")]
public class PersonList
{
[XmlArrayItem("Person", typeof(Person))]
public Person[] Person { get; set; }
}
[Serializable()]
public class Person
{
[XmlAttribute("id")]
public int ID { get; set; }
[XmlAttribute("tag")]
public string Tag{ get; set; }
[XmlElement("Name")]
public string Name{get; set;}
}
class Program
{
static void Main(string[] args)
{
PersonList listPersons = null;
string path = "personlist.xml";
XmlSerializer serializer = new XmlSerializer(typeof(PersonList ));
StreamReader reader = new StreamReader(path);
listPersons= (PersonList)serializer.Deserialize(reader);
reader.Close();
}
}
【问题讨论】:
-
你能描述更多关于什么不起作用的信息吗?乍一看,还可以。
-
"...在我的情况下不起作用..." - 此信息并没有真正的帮助。它没有说明究竟是什么不起作用,即您是否在任何地方收到任何错误消息,您是否尝试调试问题以确保它确实完成了预期的事情。
标签: c# xml serialization