If you have ever needed to serialize some sort of object to a string for whatever reason we always trying to google some example of how to do it correctly. In the example below, I am going to serialize and compress a generic list to a string.
Serialization and Compression
private static string CompressValue(object serializedValue)
{
try
{
BinaryFormatter bf = new BinaryFormatter();
using (MemoryStream ms = new MemoryStream())
{
bf.Serialize(ms, serializedValue);
byte[] inbyt = ms.ToArray();
using (MemoryStream objStream = new MemoryStream())
{
using (DeflateStream objZS = new DeflateStream(objStream, CompressionMode.Compress))
{
objZS.Write(inbyt, 0, inbyt.Length);
objZS.Flush();
objZS.Close();
byte[] b = objStream.ToArray();
return Convert.ToBase64String(b);
}
}
}
}
catch { return string.Empty; }
}
Deserialize object
private ListAnd that is it, you can now serialized any object into a string and deserialize into your object again.
Happy coding guys...