#region 将对象流转换成二进制流
/// <summary>
/// 将对象流转换成二进制流
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public System.IO.MemoryStream SerializeBinary(object request)
{
try
{
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter serializer = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
System.IO.MemoryStream memStream = new System.IO.MemoryStream(); //创建一个内存流存储区
serializer.Serialize(memStream, request);//将对象序列化为内存流中
return memStream;
}
catch (Exception ex)
{
//throw ex;
}
return null;
}
#endregion
#region 将二进制流转换成对象
/// <summary>
/// 将二进制流转换成对象
/// </summary>
/// <param name="memStream"></param>
/// <returns></returns>
public object DeSerializeBinary(byte[] data)
{
try
{
System.IO.MemoryStream memStream = new System.IO.MemoryStream(data);
memStream.Position = 0;
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter deserializer = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
object newobj = deserializer.Deserialize(memStream);//将内存流反序列化为对象
memStream.Close(); //关闭内存流,并释放
return newobj;
}
catch (Exception ex)
{
//throw ex;
}
return null;
}
#endregion