private static T RestoreData <T>(string fileName, SerializeFormatter formatter) where T : ITypeToSerialize { //T restoredObject = default(T); object restoredObject = null; using (var fileStream = File.Open(workspace + fileName, FileMode.OpenOrCreate)) { switch (formatter) { case SerializeFormatter.Binary: BinaryFormatter bf = new BinaryFormatter(); restoredObject = bf.Deserialize(fileStream); break; case SerializeFormatter.Soap: SoapFormatter sf = new SoapFormatter(); restoredObject = sf.Deserialize(fileStream); break; case SerializeFormatter.Xml: XmlSerializer xmlSerializer = new XmlSerializer(typeof(T)); restoredObject = xmlSerializer.Deserialize(fileStream); break; default: break; } } return((T)restoredObject); }
public static void SavaData(string fileName, object objectGraph, SerializeFormatter formatter) { using (var fileStream = File.Open(workspace + fileName, FileMode.OpenOrCreate)) { switch (formatter) { case SerializeFormatter.Binary: BinaryFormatter bf = new BinaryFormatter(); bf.Serialize(fileStream, objectGraph); break; case SerializeFormatter.Soap: SoapFormatter sf = new SoapFormatter(); sf.Serialize(fileStream, objectGraph); break; case SerializeFormatter.Xml: XmlSerializer xmlSerializer = new XmlSerializer(objectGraph.GetType()); xmlSerializer.Serialize(fileStream, objectGraph); break; default: break; } } }