#c# #xml #visual-studio-2010 #serialization #xsd
#c# #xml #visual-studio-2010 #сериализация #xsd
Вопрос:
У меня есть несколько XML-файлов с разными элементами в нем. Я сгенерировал xsd-файл для каждого xml-файла с помощью visual Studio, а также сгенерировал файл c #, введя xsd fileName.xsd Теперь я пытаюсь получить все элементы этих различных xml-файлов и поместить их в один xml-файл. Есть идеи, как это сделать? Когда я пытаюсь сериализовать каждый xml-файл отдельно, я не могу получить значение элементов.
Комментарии:
1. вы хотите объединить все ваши XML-файлы
2. Я объединяю все элементы xml-файла в один XML-файл
3. эти файлы имеют общие узлы или вам просто нужно объединить их в один
Ответ №1:
Вы можете использовать этот короткий фрагмент ниже для объединения двух XDocuments,
string oldXmlFile = @"Path";
string newXmlfile = @"Path2";
XDocument document = XDocument.Load(oldXmlFile);
document.Root.Add(XDocument.Load(newXmlfile).Root.Elements());
document.Save(oldXmlFile);
но тогда дублирующиеся элементы также будут заполнять объединенный документ, так что здесь есть удобный маленький метод, который также проверяет наличие дублирующихся элементов.