You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

33 lines
790 B

  1. using System;
  2. using System.IO;
  3. using System.Xml.Serialization;
  4. namespace CI.WSANative.Serialisers
  5. {
  6. public static class WSANativeSerialisation
  7. {
  8. public static string SerialiseToXML<T>(T item)
  9. {
  10. XmlSerializer xmlSerializer = new XmlSerializer(item.GetType());
  11. string result;
  12. using (StringWriter stringWriter = new StringWriter())
  13. {
  14. xmlSerializer.Serialize(stringWriter, item);
  15. result = stringWriter.ToString();
  16. }
  17. return result;
  18. }
  19. public static T DeserialiseXML<T>(string xml)
  20. {
  21. XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
  22. T result;
  23. using (StringReader stringReader = new StringReader(xml))
  24. {
  25. result = (T)((object)xmlSerializer.Deserialize(stringReader));
  26. }
  27. return result;
  28. }
  29. }
  30. }