我想在解析本地 XML 之前显示数据,但不知道如何做?我用这个尝试过
XDocument loadedData = XDocument.Load("People.xml");
var data = from query in loadedData.Descendants("array")
select new Person {
Name = (string)query.Element("string"),
};
listBox1.ItemsSource = data;
但它只向我显示了一个元素。
XML 是:
<?xml version="1.0" encoding="UTF-8"?>
<dict>
<key>Categories</key>
<array>
<string>Playing baseball</string>
<string>Driving a car</string>
<string>Getting dressed</string>
<string>Eating a hamburger</string>
<string>Tying shoelace</string>
</array>
</dict>
我想解析所有字符串元素。
最佳答案
这应该有效。您想要迭代数组元素中的元素,因此我们调用后代(“array”).Elements()。无需将 query.Value
转换为字符串,因为 value
属性以字符串形式返回。
XDocument loadedData = XDocument.Load("People.xml");
var data = (from query in loadedData.Descendants("array").Elements()
select new Person
{
Name = query.Value,
}).ToList();
listBox1.ItemsSource = data;
关于windows-phone-8 - 解析 XML 的复杂结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16654467/