मैं डब्लूसीएफ सेवा कॉल के परिणामों के लिए सिल्वरलाइट डेटाग्रिड बांधने की कोशिश कर रहा हूं। मैं ग्रिड में प्रदर्शित डेटा नहीं देख रहा था, इसलिए जब मैं डीबगर के माध्यम से भाग गया, तो मैंने देखा कि XDocument.Descendants() किसी भी तत्व को वापस नहीं कर रहा था जब भी मैं एक वैध तत्व नाम में गुजर रहा था। यहाँXDocument.Descendants() किसी भी तत्व को वापस नहीं कर रहे हैं
<ArrayOfEmployee xmlns="http://schemas.datacontract.org/2004/07/Employees.Entities" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Employee>
<BirthDate>1953-09-02T00:00:00</BirthDate>
<EmployeeNumber>10001</EmployeeNumber>
<FirstName>Georgi</FirstName>
<Gender>M</Gender>
<HireDate>1986-06-26T00:00:00</HireDate>
<LastName>Facello</LastName>
</Employee>
<Employee>
<BirthDate>1964-06-02T00:00:00</BirthDate>
<EmployeeNumber>10002</EmployeeNumber>
<FirstName>Bezalel</FirstName>
<Gender>F</Gender>
<HireDate>1985-11-21T00:00:00</HireDate>
<LastName>Simmel</LastName>
</Employee>
</ArrayOfEmployee>
और विधि मैं गुमनाम वस्तुओं का संग्रह में परिणाम लोड करने, एक्सएमएल को LINQ का उपयोग करें, और फिर ग्रिड से संग्रह बाँध का उपयोग कर रहा है: यहाँ एक्सएमएल कि सेवा से वापस पारित हो जाता है है ।
void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs args)
{
if (args.Error != null) return;
var xml = XDocument.Parse(args.Result);
var employees = from e in xml.Descendants("Employee")
select new
{
EmployeeNumber = e.Element("EmployeeNumber").Value,
FirstName = e.Element("FirstName").Value,
LastName = e.Element("LastName").Value,
Birthday = e.Element("BirthDate").Value
};
DataGrid.SelectedIndex = -1;
DataGrid.ItemsSource = employees;
}
कोई विचार क्यों xml.Descendants("Employee")
कुछ भी वापस नहीं करता है?
धन्यवाद!
आप सही थे, मुझे नामस्थान शामिल करने की आवश्यकता थी। मदद के लिए धन्यवाद! –