سؤال

أقوم بإرجاع بيانات XML من خدمة الويب Yahoo GeoPlanet باستخدام HttpWebRequest.

أقوم بتحميل XML باستخدام

XPathDocument doc = new XPathDocument(HttpWebResponse.GetResponseStream())

يأتي التالي:

XPathNavigator nav = doc.CreateNavigator();

إذا فعلت nav.Select("places"); أو nav.Select("/places"); أو nav.Select("//places");, ، لا شيء يعود!

ولكن إذا فعلت nav.select("/*");, ، أحصل على العقدة وأقوم بها node.Name عائدات places?

هل كانت مفيدة؟

المحلول

لا أعرف شيئًا عن تنسيق بيانات Yahoo ولكني أعلم أن الخطأ الأكثر شيوعًا في C# وXPath هو نسيان إضافة مساحات الأسماء ذات الصلة إلى "NamespaceManager" الخاص بك، قم بإلقاء نظرة هنا http://mydotnet.wordpress.com/2008/05/29/worlds-smallest-xml-xpath-tutorial/

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top