मैं एक एक्सएमएल फ़ाइल में सभी नोड्स को एक सूची में जोड़ने की कोशिश कर रहा हूं, और मैं कुछ गलत कर रहा हूं लेकिन मैं अपने जीवन के लिए भार को देखने के बाद भी इसे समझ नहीं सकता उदाहरणों के। यहाँसी # Foreach एक्सएमएल नोड
<queue>
<slots>
<slot>
<status>Downloading</status>
<filename>file1</filename>
<size>1 GB</size>
</slot>
<slot>
<status>Downloading</status>
<filename>file2</filename>
<size>2 GB</size>
</slot>
</slots>
</queue>
और कोड है:: इस एक्सएमएल टुकड़ा है
XDocument xDoc = XDocument.Load(xmlFilePath);
List<Download> list = new List<Download>();
foreach (var download in xDoc.Descendants("slots"))
{
string filename = download.Element("filename").Value;
string size = download.Element("size").Value;
string status = download.Element("status").Value;
list.Add(new Download { Filename = filename, Size = size, Status = status });
}
किसी भी मदद की बहुत हमेशा की तरह की सराहना की।
संपादित करें: स्पष्ट करने के लिए, मैं
string filename = download.Element("filename").Value;
पर एक NullReferenceException हो रही है और मुझे पता है सूचीदृश्य याद आ रही है, मैं अभी तक कि बिट नहीं किया है :)
क्या आप WPF या Winforms का उपयोग कर रहे हैं? मैं आपको एक सूची बना रहा हूँ। सूची सूची में कैसे बाध्य है? और क्या काम नहीं कर रहा है? क्या आपको अपवाद मिल रहा है? क्या सूची सिर्फ भर नहीं रही है? क्या सूचीदृश्य में कुछ भी नहीं है? क्या उम्मीदवारों में कुछ भी नहीं है? – JMarsch
क्षमा करें मैंने इसे थोड़ा और स्पष्ट कर दिया है! – JoeBeez
बदले में xDoc.Descandants ("स्लॉट्स") का प्रयास करें –