Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
XmlSerializer serializer = new XmlSerializer(typeof_object);
fs = new FileStream(FileName, FileMode.Create, System.IO.FileAccess.ReadWrite);
XmlWriter writer = new XmlTextWriter(fs, System.Text.Encoding.Unicode);
serializer.Serialize(writer, obj); XmlSerializer serializer = new XmlSerializer(typeof_object);
fs = new FileStream(FileName, FileMode.Create, System.IO.FileAccess.ReadWrite);
XmlWriter writer = new XmlTextWriter(fs, System.Text.Encoding.Unicode);
serializer.Serialize(writer, obj);
<Teacher xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http:/
/www.w3.org/2001/XMLSchema">
<Id>6eb64959-c267-4dbb-94cc-4163f3fe7a28</Id>
<FirstName>Maria</FirstName>
<LastName>Ivanovna</LastName>
</Teacher>
Собственно, где мне пришлось это применять: на веб-сервисах, где источником является MS SQL база на выходе нужно получить XML, который будут использовать клиентское iPhone приложение и Windows Forms.
Либо когда данные запрашиваются у БД, можно сразу их трансформировать в XML без загрузки в промежуточные объекты.
var asm = Assembly.Load(File.ReadAllBytes(@"C:\..\AnotherLib.dll"));
var t = asm.GetTypes().First(x => x.Name == "Teacher");
var serializer = new XmlSerializer(t);
serializer.Serialize(Console.Out, Activator.CreateInstance(t));
Необходимо получить такое сообщение:
Конструируем XML с использованием LINQ to XML API