1using System.IO;
2using System.Text;
3using System.Xml.Serialization;
4
5static string SerializeX(object obj)
6 {
7 using (MemoryStream memoryStream = new MemoryStream())
8 using (StreamReader reader = new StreamReader(memoryStream))
9 {
10 var serializer = new XmlSerializer(obj.GetType());
11 serializer.Serialize(memoryStream, obj);
12 memoryStream.Position = 0;
13 return reader.ReadToEnd();
14 }
15 }
16
17 static object DeserializeX(string xml, Type toType)
18 {
19 using (Stream stream = new MemoryStream())
20 {
21 byte[] data = System.Text.Encoding.UTF8.GetBytes(xml);
22 stream.Write(data, 0, data.Length);
23 stream.Position = 0;
24 var deserializer = new XmlSerializer(toType);
25 return deserializer.Deserialize(stream);
26 }
27 }