im ayant un problème avec un XDocument créer le XDocument parser un xml retourné à partir d'un service web. Voici le xmlXDocument ne recevra pas les descendants bien que le choisi
<VentaOnlineList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/">
<VentasList>
<VentaOnlineInfo>
<ProcessDate>2010-11-01T00:00:00</ProcessDate>
<TicketDate>2010-11-01T00:00:00</TicketDate>
<DeliveryDate>2010-09-29T00:00:00</DeliveryDate>
<DwhLastMonthProcessData>0</DwhLastMonthProcessData>
<DwhLastMonthTicketDate>0</DwhLastMonthTicketDate>
<PsucLastMonthDeliveryDate>0</PsucLastMonthDeliveryDate>
<DwhSelectedMonthProcessData>-6.54</DwhSelectedMonthProcessData>
<DwhSelectedMonthTicketDate>-6.54</DwhSelectedMonthTicketDate>
<PsucSelectedMonthDeliveryDate>-6.54</PsucSelectedMonthDeliveryDate>
<DwhNextMonthProcessData>0</DwhNextMonthProcessData>
<DwhNextMonthTicketDate>0</DwhNextMonthTicketDate>
<PsucNextMonthDeliveryDate>0</PsucNextMonthDeliveryDate>
</VentaOnlineInfo>
</VentasList>
<Error>
<ErrorFlag>false</ErrorFlag>
</Error>
</VentaOnlineList>
maintenant, quand je tente d'appeler les Descendants de dire lets « VentaOnlineInfo » il dit que son vide.
est ici le code
XDocument xmlSell = XDocument.Parse(xmlContent);
XNamespace nameSpace = "http://tempuri.org/";
var venta = from ventas in xmlSell.Descendants(nameSpace + "VentaOnlineInfo")
select new VentaDigital
{
ProcessDate = (DateTime)ventas.Attribute("ProcessDate"),
TicketDate = (DateTime)ventas.Attribute("TicketDate"),
DeliveryDate = (DateTime)ventas.Attribute("DeliveryDate")
};
ventasDigitales.ItemsSource = venta;
XmlContent son rempli d'une chaîne contenant le XML.
Quelqu'un sait pourquoi il ne cesse de dire que le descendant n'existe pas? Toute aide sera apréciée
il peut s'agir d'une erreur, mais elle échoue toujours. il ne fait pas exception, mais il ne remplira pas la grille de données. – ShinyDarkStone
J'ai trouvé quelques autres problèmes, voir ma réponse éditée. Je l'ai essayé dans LinqPAD et cela a fonctionné avec ces changements. –
Vous pouvez * lancer * vers DateTime. Il y a une conversion explicite. –