如何将以下类转换为XML?

时间:2012-10-19 11:47:54

标签: xml vb.net class properties

所以我在vb.net上创建这个类。该类将被序列化为xml。

使用

  

<的XmlElement( “曲奇”)> _

我可以按照我想要的方式命名元素。

  Private i_cookies As Integer
<XmlElement("Cookies")> _
Public Property Cookies() As Integer
    Get
        Return i_cookies 
    End Get
    Set(ByVal value As Integer)
        i_cookies = value
    End Set
End Property

元素很容易命名。但问题是我现在需要做一些事情来制作一个包含元素的序列和包含序列的复杂类型,并且还要恰当地命名它们。

有谁知道怎么做?

我一直认为我需要将我的属性(这些元素)放入某些东西(但我不知道是什么),将其表示为序列,将序列表示为代表复杂类型的东西。

编辑:我真的不知道如何正确地提出我的问题。

编辑(请求更多信息): 下面是关于我希望它的方式的信息,但问题是,我不知道如何在我的班级中添加复杂类型和元素周围的序列。

<root>
 <complexType name ="ShoppingList">
   <sequence>
     <element name="cookies"></element>
     ''More elements/product and such, but this isn't that difficult
   </sequence>
 </complexType>
<root>

1 个答案:

答案 0 :(得分:1)

我不确定你想要建模的确切结构是什么。以下是一些例子:


<ShoppingList>
    <Cookies>3</Cookies>
</ShoppingList>

建模
<XmlType("ShoppingList")> _
Public Class ShoppingList
    <XmlElement("Cookies")> _
    Public Property Cookies As Integer
End Class

<ShoppingList>
    <Cookies>
        <Cookie>Chocolate Chip Cookies</Cookie>
        <Cookie>Brownies</Cookie>
    </Cookies>
</ShoppingList>

建模
<XmlType("ShoppingList")> _
Public Class ShoppingList
    <XmlArray("Cookies")> _
    Public Property Cookies As List(Of Cookie)
End Class

Public Class Cookie
    <XmlText> _
    Public Property Name As String
End Class

<XmlType("ShoppingList")> _
Public Class ShoppingList
    <XmlArray("Cookies")> _
    <XmlArrayItem("Cookie")> _
    Public Property Cookies As List(Of String)
End Class