是不是你有处理值转换比如Convert.ToInt32()之类的东西?

解决方案 »

  1.   

    相关代码如下:
    // 序列化对象
    byte[] byteView = SerializeClass.SerializeClassInstance(this.Info);
    //断点
    public class SerializeClass
    {
    //将一个类的实例序列化成一个二进制流
    public static byte[] SerializeClassInstance(object classInstance)
    {
    if(classInstance != null)
    {
    //建立一个内存流
    System.IO.MemoryStream mstrm = new MemoryStream();
    //建立一个二进制序列化类实例并返回对象序列化后的二进制流
    IFormatter binformat = new BinaryFormatter();
    binformat.Serialize(mstrm,classInstance);
    return mstrm.ToArray();
    }
    else
    {
    //如果对象为空,则返回null
    return null;
    }
    }
    //将一个二进制流反序列化成一个类的实例
    public static object DeSerializeClassInstance(byte[] binaryStream)
    {
    if(binaryStream != null)
    {
    //建立一个内存流
    System.IO.MemoryStream mstrm = new MemoryStream(binaryStream);
    mstrm.Seek(0,SeekOrigin.Begin);
    //建立一个二进制序列化类实例并返回反序列化的对象
    BinaryFormatter binformat = new BinaryFormatter();
    object obj = binformat.Deserialize(mstrm);
    mstrm.Close();
    return obj;//binformat.Deserialize(mstrm);
    }
    else
    {
    return null;
    }
    }
    }不知道上面代码是否有问题????