Чтение и использование файла XML в качестве базы данных - приложение для Windows Phone 7 - PullRequest
3 голосов
/ 01 августа 2011

У меня есть приложение, которое должно читать данные из файла XML и затем использовать эти данные.

Как я могу импортировать XML-файл в свое приложение (каков код для этого) и как я могу использовать данные из этого XML-файла?

Вот пример базы данных XML, которую я использую:

<Data>
  <Animals>
    <A>
      <word>Ant</word>
      <word>Aardwark</word>
    </A>
    <B>
      <word>Bear</word>
      <word>Boa</word>
   </B>
  </Animals>
</Data> 

Также я попытался это

XDocument loadedData = XDocument.Load("Data.xml"); 

, чтобы прочитать данные из XML-файла, но не сработало.

Кроме того, в какой форме я могуиспользовать данные XML?Другими словами, данные xml будут в строковом формате или в формате «X-Something»?

Обновление: Может быть, для меня будет работать десериализация Xml?

СпасибоВы заранее

Ответы [ 4 ]

3 голосов
/ 01 августа 2011

Если «Data.xml» находится в корне проекта, убедитесь, что для Build Action установлено значение Content и ваш код должен работать.

1 голос
/ 01 августа 2011

Linq2XML - ваш друг, и он поможет вам сделать это! Имейте в виду, что это будет только для чтения, если вы не поместите его в изолированное хранилище .

0 голосов
/ 02 августа 2011

Нет необходимости в IsoStore, если у вас уже есть файл, и он одинаков для каждого экземпляра приложения (учитывая, что вам нужно только прочитать его). Просто сделайте то, что Мэтт сказал , чтобы быстро получить содержимое. Я бы порекомендовал десериализовать его в отдельный класс, чтобы вы могли легко использовать и изменять данные.

Теперь, если вы хотите сохранить данные, вы можете позже легко сериализовать существующий класс и сохранить его локально. Если вы хотите немного углубиться в хранение данных, вы можете использовать SQL CE , который входит в состав Mango и позволит вам манипулировать файлами SDF (которые, кстати, могут быть загружены отдельно с помощью экземпляры приложения). Также неплохо было бы изучить Sterling DB (будет использовать IsoStore).

0 голосов
/ 01 августа 2011

Используя пространство имен System.XML, используйте следующий код.

XmlDocument xml = new XmlDocument();
xml.LoadXml("your string of xml");
XmlNode xNode = xml.SelectSingleNode("xpath to a single node");
XmlNodeList xNodeList = xml.SelectNodes("xpath to multiple nodes");

Вы можете обрабатывать xNode и xNodeList как наборы результатов массива и просматривать их содержимое, используя синтаксис скобок, например, xNodeList [0].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...