Как сериализовать класс, сгенерированный из XSD в XML - PullRequest
4 голосов
/ 16 мая 2011

Я создал XSD-файл из Visual Studio и также могу сгенерировать образец XML, но моя цель - использовать этот XSD для создания XML-файла во время выполнения.

Я использовал XSD.exe для генерации класса из моего XSD-файла, а затем создал программу для заполнения объекта из «класса». Как я могу сериализовать объект в файл XML?

Ответы [ 3 ]

7 голосов
/ 17 апреля 2013

Оба этих примера оставляют поток открытым, и XmlFormatter является частью библиотек BizTalk - так что XmlSerializer будет более подходящим:

using (Stream stream = File.Open(fileName, FileMode.Create))
{
    XmlSerializer serializer = new XmlSerializer(typeof(MyObject));
    serializer.Serialize(stream, MyObject);
    stream.Flush();
}
3 голосов
/ 16 мая 2011

Когда вы создали классы для сериализации и десериализации файла Xml с помощью инструмента XSD.exe, вы можете записать свои экземпляры обратно в файлы, используя ..

Сериализация !( Архив )

  Stream stream = File.Open(filename, FileMode.Create);
  XmlFormatter formatter = new XmlFormatter (typeof(XmlObjectToSerialize));
  formatter.Serialize(stream, xmlObjectToSerialize);
  stream.Flush();
0 голосов
/ 16 мая 2011

Двоичный формат является двоичным, используйте XML-версию для XML:

XmlFormatter serializer = new XmlFormatter(typeof(MyObject));
serializer.Serialize(stream, object1);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...