我有以下 XML 文件,由我的 Windows Phone 8 应用程序生成。
到目前为止一切正常,但现在我希望能够查询文件,并检索与特定关联的文件——因此,如果我针对“2222 它”查询它,将返回“位置名称”。
我尝试了几种方法来做到这一点,但我意识到即使经过数小时的研究,我也不知道如何实现这一目标。XML 和 LINQ 让我非常困惑……所以我非常感谢任何人可以提供的任何教程或技巧!到目前为止的代码位于示例 XML 文档的下方。
非常感谢
<?xml version="1.0" encoding="utf-8"?>
<SmartSafe>
<Tag>
<tag>22222</tag>
<name>Location Name</name>
<latitude>xx.xxxxxxx</latitude>
<longitude>xx.xxxxxxx</longitude>
</Tag>
<Tag>
<tag>4444</tag>
<name>Location Name</name>
<latitude>xx.xxxxxxx</latitude>
<longitude>xx.xxxxxxx</longitude>
</Tag>
<Tag>
<tag>4444</tag>
<name>Location Name</name>
<latitude>xx.xxxxxxx</latitude>
<longitude>xx.xxxxxxx</longitude>
</Tag>
<Tag>
<tag>4444</tag>
<name>Location Name</name>
<latitude>xx.xxxxxxx</latitude>
<longitude>xx.xxxxxxx</longitude>
</Tag>
</SmartSafe>
下面是处理解析从 UriAssociationMapper 传递的 uid 的 .cs 部分。
protected override void OnNavigatedTo(NavigationEventArgs e)
{
if (NavigationContext.QueryString.ContainsKey("uid"))
{
uid = int.Parse(NavigationContext.QueryString["uid"]);
}
base.OnNavigatedTo(e);
string stringUid = uid.ToString();
tagID.Text = stringUid;
//Retrieve tag name from xml
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
XDocument document;
using (var storage = IsolatedStorageFile.GetUserStoreForApplication())
if (storage.FileExists("/tagRegistry.xml"))
{
using (var stream = storage.OpenFile("/tagRegistry.xml", FileMode.Open))
{
document = XDocument.Load(stream);
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
}
任何帮助将不胜感激谢谢!