此示例使用a StringWriter来保存序列化数据,然后调用ToString()给出实际string值:
Person john = new Person();
XmlSerializer xmlSerializer = new XmlSerializer(typeof(Person));
StringWriter stringWriter = new StringWriter();
xmlSerializer.Serialize(stringWriter, john);
string serializedXML = stringWriter.ToString();
Run Code Online (Sandbox Code Playgroud)
有没有更简单/更清洁的方法来做到这一点?所有Serialize()重载似乎都使用了一个Stream或Writer.
更新:问一个关于通过扩展方法序列化IEnumerable的类似问题.