Добрый вечер. Имеется папка с XML-файлами со множеством элементов, вложенностей и сложной структурой, которые необходимо записать в несколько связанных таблиц. Но перед записью необходимо проверить XML-ки на корректность структуры, соответствие типов данных, содержащихся элементов, наличие обязат. элементов и т.д.
Эта задача решается с помощью проверки xml-файлов по
xsd-схеме.
Но слышал есть еще способ реализовать такую проверку путем написания C# классов с соответствующими элементам xml переменными, что-то наподобие:
<xml>
<name>Samir</name>
<dr>1996-09-16</dr>
<okato>82000</okato>
</xml>
C# класс этой xml-ки:
using System;
using System.Xml.Serialization;
using System.Collections.Generic;
namespace Xml2CSharp
{
[XmlRoot(ElementName="xml")]
public class Xml {
[XmlElement(ElementName="name")]
public string Name { get; set; }
[XmlElement(ElementName="dr")]
public DateTime Dr { get; set; }
[XmlElement(ElementName="okato")]
public string Okato { get; set; }
}
}
Вопрос, можно ли вторым способом проверить наличие обязательных/лишних элементов в проверяемом xml-файле?
Как можно сверить xml-элемент с выше описанным классом?
Является ли проверка по XSD-схеме более производительным или удобным вариантом?