<PackageReference Include="Relativity.Server.Import.SDK" Version="2.9.2" />

SerializationHelper

static class SerializationHelper
Defines static methods to serialize and deserialize objects.
using System.IO; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters.Soap; using System.Text; namespace Relativity.DataExchange { internal static class SerializationHelper { public static void SerializeToSoapFile(object value, string file) { using (FileStream fileStream = new FileStream(file, FileMode.Create, FileAccess.Write, FileShare.None)) new SoapFormatter().Serialize((Stream)fileStream, value); } public static T DeserializeFromSoapFile<T>(string file) { return DeserializeFromSoap<T>(File.ReadAllText(file)); } public static T DeserializeFromSoap<T>(string soap) { if (string.IsNullOrEmpty(soap)) return default(T); return SoapFormatterDeserialize<T>(soap); } private static T SoapFormatterDeserialize<T>(string soap) { using (MemoryStream memoryStream = new MemoryStream(Encoding.UTF8.GetBytes(soap))) { SoapFormatter val = new SoapFormatter(); val.set_Binder((SerializationBinder)new RdcFileSerializationBinder(typeof(T).Assembly)); return (T)val.Deserialize((Stream)memoryStream); } } } }