1

经过几个小时的努力,我终于让 WP8 写入一个 xml 文件……比我最初想象的要简单。

但是,现在生成的文档的结构与预期的不同。

XDocument tagRegistry = new XDocument(new XElement("SmartSafe"));

        if (stringUid == "" | desiredName == "" | latitude == "" | longitude == "" | stringUid == null | desiredName == null | latitude == null | longitude == null)
        {
            MessageBox.Show("Something went wrong....Please try again in a moment...");
        }
        else
        {
            tagRegistry.Element("SmartSafe").Add(new XElement("Tag", 
                new XAttribute("tag", stringUid), 
                new XAttribute("name", desiredName), 
                new XAttribute("latitude", latitude), 
                new XAttribute("longitude", longitude)));
        }
        using (var storage = IsolatedStorageFile.GetUserStoreForApplication())
        {
            using (Stream stream = storage.CreateFile("/tagRegistry.xml"))
            {
                tagRegistry.Save(stream);
            }
        }

这将生成以下 XML 文件。

    <?xml version="1.0" encoding="utf-8"?>
    <SmartSafe>
      <Tag tag="2" name="Home" latitude="53.8975533333333" longitude="-1.94872666666667" />
    </SmartSafe>

我的意图是:

<?xml version="1.0" encoding="utf-8"?>
<SmartSafe>
  <Tag>
    <tag>2<tag>
    <name>Home</name>
    <latitude>12345<latitude>
    <longitude>12345<longitude/>
  </Tag>
</SmartSafe>

如何更改我的代码以正确生成文件?

4

1 回答 1

4

它正在做你告诉它做的事情。您正在元素上创建属性

使用 XElement 而不是 XAttribute。

于 2013-07-15T21:29:09.357 回答