根元素丢失Windows Phone

本文关键字:Windows Phone 元素 | 更新日期: 2023-09-27 18:15:00

我需要读取一个xml文件,但是当我尝试读取它时,我有这个错误。

public void load()
{
  IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication();
  IsolatedStorageFileStream fileStream;
  try
  {
    fileStream = myIsolatedStorage.OpenFile("sites.xml", FileMode.Open, 
      FileAccess.Read);
  }
  catch (Exception)
  {
    fileStream = myIsolatedStorage.CreateFile("sites.xml");
    XDocument sites= new XDocument(new XElement("root"));
    fileStream = myIsolatedStorage.OpenFile("sites.xml", FileMode.Open, 
      FileAccess.Read);
  }          
  List<Site> listSites= new List<Site>();
  using (StreamReader file= new StreamReader(fileStream))
  {
    XDocument doc= XDocument.Load(file);
    foreach (XElement elemento in doc.Elements())
    {
      String name= elemento.Element("name").Value;
      String url = elemento.Element("url").Value;
      listSites.Add(new Site(name));
    }
    lstSites.ItemsSource = listSites;
  }
}

XDocument doc= XDocument.Load(file); 

我在主题中收到错误。你能帮我吗?

根元素丢失Windows Phone

也许您应该改变处理xml文件和隔离存储的方式。您可以创建一个包含您的名称和url属性的Site类,并将这些属性的列表序列化到隔离的存储。

的一个例子可以在这里找到:http://www.windowsphonegeek.com/tips/All-about-WP7-Isolated-Storage--Read-and-Save-XML-files

您的文档(sites.xml)应该有一个根元素,例如:

<?xml version="1.0"?>
<MyRootElement>
...
</MyRootElement>