Bonjour,
J'essaie d'importer des données depuis un fichier xml que voila:
---- presets ----.xml

J'ai déclaré des class comme ceci:
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Class PresetPools
    Public Property Presets As Les_Presets
    Public Property Index As Integer
End Class
 
Class Les_Presets
    Public Property Index As Integer
    Public Property Name As String
    Public Property SpecialUse As String
    Public Property Channels As List(Of Les_Channels)
End Class
 
Class Les_Channels
    Public Property PresetValue As List(Of Les_PresetValue)
End Class
 
Class Les_PresetValue
    Public Property Value As Double
    Public Property Embeded As List(Of Les_Embeded) ' quand il y a le noeud HANDLE c'est qu'il y a une preset embeded
    Public Property Channel As List(Of Les_Channel)
End Class
 
Class Les_Embeded
    Public Property Name As String
    Public Property Numero As List(Of Les_Numero)
End Class
 
Class Les_Channel
    Public Property Fixture_id As Integer
    Public Property Attribute_Name As String
End Class
 
Class Les_Numero
    Public Property Num1 As Integer
    Public Property Num2 As Integer
    Public Property Num3 As Integer
End Class
puis j'ai codé ces lignes pour récupérer les données:
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
            Dim MesPresetPool2 As List(Of PresetPools) =
            (
            From k In xDoc.Descendants("PresetPools")
            Select New PresetPools With
                {
                .Index = k.Attribute("index")?.Value,
                .Presets = (From l In k.Descendants("PresetPool")
                            Select New Les_Presets With
                                    {
                                    .Index = l.Attribute("index")?.Value,
                                    .Name = l.Attribute("name")?.Value,
                                    .SpecialUse = l.Attribute("SpecialUse")?.Value,
                                    .Channels = (From m In l.Descendants("Channels")
                                                 Select New Les_Channels With
                                                         {
                                                         .PresetValue = (From n In m.Descendants("PresetValue")
                                                                         Select New Les_PresetValue With
                                                                                 {
                                                                                 .Value = n.Attribute("Value")?.Value,
                                                                                 .Embeded = (From p In n.Descendants("Handle")
                                                                                             Select New Les_Embeded With
                                                                                                     {
                                                                                                     .Name = p.Attribute("name")?.Value,
                                                                                                     .Numero = (From q In p.Descendants("No")
                                                                                                                Select New Les_Numero With
                                                                                                                        {
                                                                                                                        .Num1 = q.Element("No")?.Value' A MODIFIER POUR LES NUM DES PRESETS EMBEDED
                                                                                                                        }
                                                                                                                ).ToList(),
                                                                                                      }
                                                                                            ).tolist(),
                                                                                 .Channel = (From t In n.Descendants("Channel")
                                                                                             Select New Les_Channel With
                                                                                                         {
                                                                                                            .Fixture_id = t.Element("channel").Attribute("Fixture_Id")?.Value,
                                                                                                            .Attribute_Name = t.Element("Channel").Attribute("Attribute_Name")?.Value
                                                                                                         }
                                                                                                 ).ToList()
                                                                                  }
                                                                         ).tolist()
                                                          }
                                                 ).tolist()
                                    }
                            ).tolist()
                }
            ).tolist()
J'ai une erreur à la ligne 30 du code de ce thread me disant "Le nom du champ ou de la propriété initialisé dans un initialisateur d'objet doit commencer par '.'"
et
"Expression attendue."
Je ne vois pas ce qu'il ne va pas. Pouvez-vous m'aidez?
Merci.