Bonjour,

je reçoit un xml en réponse à un web service. De cette réponse, j’extraie les informations dont j'ai besoin. Seulement arrivé à une certaine balises,
il y a un namespace de défini sans aucun préfixe. J'essaye donc de définir un namespace pour ensuite récupérer mon information avec xPath mais rien n'y fait, mon information n'est pas extraite.

Voici la manière dont je m'y prend :

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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
        Dim xmlDoc As XmlDocument = New XmlDocument
        xmlDoc.LoadXml("<?xml version=""1.0"" encoding=""utf-8""?><addresses>" & _
                           "<address>" & _
                               "<communeRef Type=""001"" Status=""Status1"" Structure=""Structure1"">" & _
                                   "<Date xmlns=""http://www.ibz.rrn.fgov.be/XSD/xm25/rn25Schema"">" & _
                                       "<Century>18</Century>" & _
                                       "<Year>1780</Year>" & _
                                       "<Month>10</Month>" & _
                                       "<Day>2</Day>" & _
                                   "</Date>" & _
                                   "<DelDate xmlns=""http://www.ibz.rrn.fgov.be/XSD/xm25/rn25Schema"">" & _
                                       "<Century>19</Century>" & _
                                       "<Year>1880</Year>" & _
                                       "<Month>10</Month>" & _
                                       "<Day>2</Day>" & _
                                   "</DelDate>" & _
                                   "<Residence xmlns=""http://www.ibz.rrn.fgov.be/XSD/xm25/rn25Schema"">" & _
                                       "<Code>5</Code>" & _
                                       "<Label>Label1</Label>" & _
                                   "</Residence>" & _
                                   "<Fusion xmlns=""http://www.ibz.rrn.fgov.be/XSD/xm25/rn25Schema"">0</Fusion>" & _
                                   "<Language xmlns=""http://www.ibz.rrn.fgov.be/XSD/xm25/rn25Schema"">1</Language>" & _
                               "</communeRef>" & _
                               "<address class=""belgianAddress"">" & _
                                   "<countryCode>55</countryCode>" & _
                                   "<countryName language=""NL"">countryName1</countryName>" & _
                                   "<countryName language=""FR"">countryName2</countryName>" & _
                                   "<countryName language=""DE"">countryName3</countryName>" & _
                                   "<cityCode>5555</cityCode>" & _
                                   "<cityName language=""NL"">cityName1</cityName>" & _
                                   "<cityName language=""FR"">cityName2</cityName>" & _
                                   "<cityName language=""DE"">cityName3</cityName>" & _
                                   "<postalCode>5785</postalCode>" & _
                                   "<streetCode>75757</streetCode>" & _
                                   "<streetName language=""NL"">streetName1</streetName>" & _
                                   "<streetName language=""FR"">streetName2</streetName>" & _
                                   "<streetName language=""DE"">streetName3</streetName>" & _
                                   "<houseNumber>78</houseNumber>" & _
                                   "<boxNumber>4</boxNumber>" & _
                                   "<date>1900-01-01</date>" & _
                               "</address>" & _
                           "</address>" & _
                           "<addressRefs>" & _
                               "<addressRef Type=""024"" Status=""Status1"" Structure=""Structure1"">" & _
                                   "<Date xmlns=""http://www.ibz.rrn.fgov.be/XSD/xm25/rn25Schema"">" & _
                                       "<Century>18</Century>" & _
                                       "<Year>1700</Year>" & _
                                       "<Month>10</Month>" & _
                                       "<Day>01</Day>" & _
                                   "</Date>" & _
                                   "<DelDate xmlns=""http://www.ibz.rrn.fgov.be/XSD/xm25/rn25Schema"">" & _
                                       "<Century>18</Century>" & _
                                       "<Year>1750</Year>" & _
                                       "<Month>12</Month>" & _
                                       "<Day>1</Day>" & _
                                   "</DelDate>" & _
                               "</addressRef>" & _
                           "</addressRefs>" & _
                       "</addresses>")
 
        Dim nodes As XmlNode = xmlDoc.SelectSingleNode("addresses")
        Dim ns As XmlNamespaceManager = New XmlNamespaceManager(xmlDoc.NameTable)
        ns.AddNamespace("", "http://www.ibz.rrn.fgov.be/XSD/xm25/rn25Schema")
 
        For Each node As XmlNode In nodes.ChildNodes
 
            If node.SelectSingleNode("communeRef") IsNot Nothing Then
 
                Dim nodeCommuneRef As XmlNode = node.SelectSingleNode("communeRef")
                Dim comRef As CommuneRef = New CommuneRef()
 
                If nodeCommuneRef.SelectSingleNode("Date/Century", ns) IsNot Nothing Then
                    comRef.Date.Century = CInt(node.SelectSingleNode("Date/Century", ns).InnerText)
                End If
 
                If node.SelectSingleNode("Date/Year") IsNot Nothing Then
                    comRef.Date.Year = CInt(node.SelectSingleNode("Date/Year").InnerText)
                End If
 
                If node.SelectSingleNode("Date/Month") IsNot Nothing Then
                    comRef.Date.Month = CInt(node.SelectSingleNode("Date/Month").InnerText)
                End If
 
                If node.SelectSingleNode("Date/Day") IsNot Nothing Then
                    comRef.Date.Day = CInt(node.SelectSingleNode("Date/Day").InnerText)
                End If
            End If
            Console.WriteLine(node.InnerXml & "\n\n")
            Console.ReadKey()
        Next
D'avance je vous remercie pour l'aide.