0

下面的代码不输出流。对我来说看起来正确但不起作用。

LineItem i1 = new LineItem() { Id = 1, PartNumber = "abc" };
LineItem i2 = new LineItem() { Id = 2, PartNumber = "def" };
LineItem i3 = new LineItem() { Id = 3, PartNumber = "ghi" };
LineItem i4 = new LineItem() { Id = 4, PartNumber = "jkl" };

List<LineItem> l1 = new List<LineItem>();
l1.Add(i1);
l1.Add(i2);
l1.Add(i3);
l1.Add(i4);

Customer c1 = new Customer() { Id = 1, Company = "MSFT", Name = "John", LineItems = l1 };

XmlSerializer mySerializer = new XmlSerializer(typeof(Customer));
TextWriter myWriter = new StreamWriter(@"XMLFile1.xml");
mySerializer.Serialize(myWriter, c1);
myWriter.Close();
4

1 回答 1

0
  • 看看你得到的内部异常。它会告诉您在序列化时遇到问题的字段/属性。

  • 另外,请记住,序列化的类必须具有默认构造函数。如果你有一个带参数的构造函数,你也需要添加默认的。(没有构造函数很好)

  • XmlSerializer 不会序列化抽象属性,请考虑到这一点

于 2013-04-02T19:16:07.170 回答