我有一个名为CustomerDetail的类,并且我在(CustomerDetail的)System.Collections.Generic.List中管理这些对象.我以一种普通的方式序列化这个对象...
Private Sub CustomerDetailsExportToXml(Details As System.Collections.Generic.List(Of CustomerDetails))
Dim x As New System.Xml.Serialization.XmlSerializer(Details.GetType)
Using s As New FileStream("customerdetails.xml", FileMode.Create)
x.Serialize(s, Details)
End Using
End Sub
...并获取普通的XML...
<?xml version="1.0"?>
<ArrayOfCustomerDetails xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CustomerDetails>
<Acronym>MSD</Acronym>
<FriendlyName>Main Street Diner</FriendlyName>
</CustomerDetails>
</ArrayOfCustomerDetails>
为了提高可读性,我想向CustomerDetail标记添加一个名为"Acronym"的属性,该属性将包含该标记的值:
<CustomerDetails Acronym="MSD">
我可以在加载/修改/保存XML的后序列化方法中做到这一点,但我担心生成的XML不能反序列化.属性的添加可以在序列化时完成吗?