c# - Selecting multiple XML node attributes with LINQ.. why is everything after the first attribute null? -
मेरे पास निम्न नमूना XML है:
& lt;? Xml संस्करण = "1.0" एन्कोडिंग = "यूटीएफ -8"? & Gt; & LT; queryableData & gt; & Lt; तालिका प्रदर्शननाम = "जहाजों" dbName = "उद्धरण" & gt; & Lt; विदेशी कुंजी स्तंभ = "ग्राहक आईडी" संदर्भ = "ग्राहक पंजीकरण" / & gt; & Lt; विदेशी कि कॉलम = "कोटस्टैटस आईडी" संदर्भ = "कोटस्टैटस" / & gt; & LT; क्षेत्रों & gt; & Lt; फ़ील्ड प्रदर्शननाम = "उद्धरण शुल्क" dbColumn = "उद्धरण चिह्न" प्रकार = "संख्या" / & gt; & Lt; फ़ील्ड displayName = "कुल वजन" dbColumn = "TotalWeight" प्रकार = "संख्या" / & gt; & Lt; / क्षेत्रों & gt; & Lt; / तालिका & gt; & Lt; / queryableData & gt; और मैं क्षेत्र नोड की सामग्री के साथ एक अनाम वस्तु बनाने की कोशिश कर रहा हूं यहां मेरा LINQ कोड है: XElement रूट = XElement.Load ("queryable.xml"); मान, कॉलम = एल। विशेषता ("डीबीसी कॉलम")। मूल्य, डेटाटाइप = एल। विशेषता (" प्रकार ")। मान}; अगर मैं केवल "DisplayName" विशेषता निर्दिष्ट करता हूं, तो यह ठीक काम करता है। अन्य दो हमेशा निरर्थक होते हैं, और इसलिए वैल्यू प्रॉपर्टी पढ़ने की कोशिश कर रहे हैं, जो एक NullReferenceException फेंक रहा है।
तत्वों से मुझे जो तीन विशेषताओं की आवश्यकता है उसे पकड़ने का सही तरीका क्या है? मुझे लगता है कि मैं सही रास्ते पर हूं लेकिन क्वेरी से कुछ भूल गया (यह मुझे लगता है कि el पूरे तत्व नहीं है) संपादित करें: कोई बात नहीं, मैं एक हूँ बेवकूफ। मैं एक तत्व को देख रहा हूं और दूसरे के लिए खोज रहा हूं!
अपने नमूना दस्तावेज़ में एकमात्र तालिका तत्व में displayName और dbName नाम दो विशेषताएं हैं, मुझे dbColumn या प्रकार तालिका तत्व पर कोड> विशेषता यदि आप फ़ील्ड तत्वों तक पहुंच चाहते हैं तो root.Descendants ("फ़ील्ड") के बजाय root.Element ("table") का उपयोग करना चाहते हैं।
Comments
Post a Comment