У меня есть простой способ сериализации объекта в XML с использованием C #, он прекрасно работает и его можно многократно использовать. Я знаю, что это старая ветка, но я хотел опубликовать это, потому что кто-то может найти это полезным для них.
Вот как я называю метод:
var objectToSerialize = new MyObject();
var xmlString = objectToSerialize.ToXmlString();
Вот класс, который делает работу:
Примечание. Поскольку это методы расширения, они должны находиться в статическом классе.
using System.IO;
using System.Xml.Serialization;
public static class XmlTools
{
public static string ToXmlString<T>(this T input)
{
using (var writer = new StringWriter())
{
input.ToXml(writer);
return writer.ToString();
}
}
private static void ToXml<T>(this T objectToSerialize, StringWriter writer)
{
new XmlSerializer(typeof(T)).Serialize(writer, objectToSerialize);
}
}