我有以下 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);
            }
        }
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
}
任何帮助将不胜感激谢谢!