在.NET中使用XmlSerializer的,但試圖序列數據返回到XML文件變得令人沮喪的我已經成功反序列化我的XML文件。當我嘗試序列化我的類時,我只獲取沒有子元素的xml的根標記。我如何序列化所有對象以獲取正確的xml數據?我曾經在某個地方看到有人建議添加要在一個集合中序列化的類,然後序列化該集合,但是我無法圍繞這個集合進行包裝,或者有沒有更簡單的方法呢?任何幫助表示讚賞!這裏是我的代碼:XmlSerializer的返回沒有在我的Windows 8 Store應用
Public Shared Function SerializeXml() As Byte()
Dim serializer As New XmlSerializer(GetType(Data))
Dim nameSpaces As XmlSerializerNamespaces = New XmlSerializerNamespaces()
Dim mStream As New MemoryStream()
Dim result As Byte()
Dim target As New Data()
nameSpaces.Add(String.Empty, String.Empty)
serializer.Serialize(mStream, target, nameSpaces)
result = mStream.ToArray()
Return result
這裏是XML的使用屬性的通用樣本:
<?xml version"1.0">
<RootTag>
<ChildTag Label="Label1" Value="Value1"/>
<ChildTag Label="Label2" Value="Value2"/>
</RootTag>
編輯:這是我的數據類:
Imports System.Xml.Serialization
<XmlRoot("DATA", [Namespace]:="", IsNullable:=False)>
Public Class Data
Inherits Model
<XmlElement("CONFIGURATION")>
Public Property Configuration() As DataConfiguration
Get
Return Me._Configuration
End Get
Set(value As DataConfiguration)
Me._Configuration = value
End Set
End Property
Private _Configuration As DataConfiguration
<XmlElement("FIELD")>
Public Property Field() As Field
Get
Return Me._Field
End Get
Set(value As Field)
Me._Field = value
End Set
End Property
Private _Field As Field
<XmlElement("LIST")>
Public Property ListRoot() As List(Of ListRoot)
Get
Return Me._ListRoot
End Get
Set(value As List(Of ListRoot))
Me._ListRoot = value
End Set
End Property
Private _ListRoot As List(Of ListRoot)
End Class
你能證明你的'正被序列化Data'類? – Kratz
顯示數據類定義 – Pawel
我已經加入數據類 – em007