Я пытался использовать xsd.exe
преобразовать .xsd файл в класс C#. Это работало, но я все еще не совершенно уверен, как использовать этот класс. Это имеет несколько атрибутов уровня класса, но самой интересной является Система. Xml. Сериализация. XmlTypeAttribute. Какое использование класса тот атрибут?
Существует ли простой способ повернуть инстанцирование этого класса в строку XML?
Очень просто. Мне нравится инструмент xsd. Ниже я позволил себе некоторые вольности.
//From xml to object
YourRootType inst = new XmlSerializer(typeof(YourRootType)).Deserialize(XmlReader.Create("some.xml"));
//From object to xml
Using(FileStream fs = new FileStream("some.xml", FileMode.Create))
new XmlSerializer(typeof(YourRootType)).Serialize(fs, inst);
Используйте классы как обычные классы. Затем, когда вы сериализуйте их в XML, XML будет проверяться на соответствие схеме. Вы также можете взять XML, который проверяет соответствие схемы, и десериализовать его обратно в экземпляры классов.
Да. Посмотрите на XmlSerializer [и StringWriter, если хотите].