Bonjour,

Je souhaite sérialiser une collection d'objets sans pour autant avoir dans mon xml le nom de ma collection. Voici ce que j'obtients

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
<splitNode xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Orientation="0" Percent="node 2">
  <Childs>
    <splitNode Orientation="0" Percent="node1">
      <Childs>
        <splitSheet idHtml="splitSheet1" Label="label" />
        <splitSheet idHtml="splitSheet2" Label="label" />
      </Childs>
    </splitNode>
  </Childs>
</splitNode>
voici ce que je voudrais
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
<splitNode xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Orientation="0" Percent="node 2">
    <splitNode Orientation="0" Percent="node1">
        <splitSheet idHtml="splitSheet1" Label="label" />
        <splitSheet idHtml="splitSheet2" Label="label" />
    </splitNode>
</splitNode>
D'avance merci de votre aide.

Mes deux classes "simplifiées". J'ai juste laissé les éléments à sérialiser
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
<Serializable(), XmlInclude(GetType(splitSheet))> _
Public Class splitNode
    Inherits splitObject
    Public Enum Enum_orientation
        Vertical
        Horizontal
    End Enum
 
    Public Orientation As Short
    Public Percent As String
    <XmlArrayItem(GetType(splitNode)), _
      XmlArrayItem(GetType(splitSheet))> _
    Public Childs As List(Of splitObject)
End Class
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
<Serializable()> _
Public Class splitSheet
    Inherits splitObject
 
    Public Label As String
    Public IdHtml As String
End Class
splitObject est un ancêtre commun dont les éléments sont ignorés.