Преобразование массива объектов в XML в C # - PullRequest
8 голосов
/ 14 октября 2011

Я знаю, что нет встроенного конвертера для преобразования массива объектов в XML. Существует ли быстрый элементарный способ создания XML из массива, чтобы помочь мне выполнить соединение LINQ to XML между этим и другим имеющимся у меня XML?

Ответы [ 2 ]

13 голосов
/ 14 октября 2011

Вы можете использовать Linq to XML, действительно легко отобразить существующие структуры данных в XML, то есть:

int[] values = { 1, 2, 17, 8 };

XDocument doc = new XDocument();
doc.Add(new XElement("root", values.Select( x=> new XElement("item", x))));

дает следующий вывод:

<root>
  <item>1</item>
  <item>2</item>
  <item>17</item>
  <item>8</item>
</root>
4 голосов
/ 14 октября 2011

Вы всегда можете использовать XmlSerializer для преобразования списка объектов C # в документ XML. Результат сериализации может быть настроен с помощью атрибутов метаданных, например, для обозначения корневых узлов или того, какое свойство класса следует игнорировать и т. Д. ... Вам определенно нужно будет применить атрибуты, чтобы результирующий XML-файл максимально соответствовал к вашим требованиям.

Вот базовое руководство по сериализации объекта в XML:

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