K@m@l نشر 23 ديسمبر 2015 أرسل تقرير نشر 23 ديسمبر 2015 داخل ملف xml على تطبيق #C، أريد بطريقة ما تحليل الملف، وجلب عنصر معين انطلاقاً من اسم العنصر:<Premium> <TotalPremiumAmount>87</TotalPremiumAmount> <StandardPremium>87</StandardPremium> <OptionalPremium>0</OptionalPremium> <StandardTax>0</StandardTax> <OptionalTax>0</OptionalTax> <ExtendedTax>0</ExtendedTax> <ExtendedPremium>0</ExtendedPremium> <PromotionalPremium>0</PromotionalPremium> <FeesPremium>0</FeesPremium> <FeesTax>0</FeesTax> <StandardFeesPremium>0</StandardFeesPremium> <OptionalFeesPremium>0</OptionalFeesPremium> <Tax>0</Tax> <StandardPremiumDistribution> <Travelers> <Traveler> <TravelerPremium>42</TravelerPremium> <TravelerTax>0</TravelerTax> </Traveler> <Traveler> <TravelerPremium>45</TravelerPremium> <TravelerTax>0</TravelerTax> </Traveler> </Travelers> </StandardPremiumDistribution> <PackagePremiumDistribution> <Packages> <Package> <PackageID>20265</PackageID> <PackageName /> <PackageTypeID>12</PackageTypeID> <Premium>87</Premium> <Fees>0</Fees> <Tax>0</Tax> <Travelers> <Traveler> <TravelerID>0</TravelerID> <Premium>42</Premium> <Tax>0</Tax> </Traveler> <Traveler> <TravelerID>1</TravelerID> <Premium>45</Premium> <Tax>0</Tax> </Traveler> </Travelers> </Package> </Packages> </PackagePremiumDistribution> </Premium>أريد جلب قيمة العنصر TravelerPremium، وكانت محاولتي على هذا المنوال:XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(xmlResponse); var premium = xmlDoc.SelectSingleNode("//TravelerPremium").InnerText; لكنه لا يعمل، فما الحل؟ اقتباس
0 E.Nourddine نشر 24 ديسمبر 2015 أرسل تقرير نشر 24 ديسمبر 2015 لهذا الغرض سنستعمل وظيفة XmlDocument، بهذا الشكل:XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(xmlResponse); var premium = xmlDoc.SelectSingleNode("//Premium[../TravelerID = '0']")كما يمكنك استعمال حلقات التكرار foreach لتصفح العقد nodes في حال كان الملف يتكون من عدّة عقد، هكذا:foreach(var premium in xmldoc.SelectNodes("//Premium[../TravelerID = '0']") { // TravelerID = 0 سيتصفح العقد الموجودة في حالة }كما يمكننا الحصول على قيمة العقدة node مباشرة مع تضمين الشرط TravelerId=0 بالطريقة التالية:XDocument xdoc = XDocument.Load(xmlResponse); var premium = (string)xdoc.Descendants("Traveler").Where(x => (string)x.Element("TravelerID") == "0").Element("Premium"); اقتباس
السؤال
K@m@l
داخل ملف xml على تطبيق #C، أريد بطريقة ما تحليل الملف، وجلب عنصر معين انطلاقاً من اسم العنصر:
أريد جلب قيمة العنصر TravelerPremium، وكانت محاولتي على هذا المنوال:
لكنه لا يعمل، فما الحل؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.