c#序列化异常

本文关键字:异常 序列化 | 更新日期: 2023-09-27 18:12:48

这是我的序列化和反序列化代码

  public byte[] DTSerialize(object dt)
    {
        MemoryStream stream = new MemoryStream();
        System.Runtime.Serialization.IFormatter formatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
        formatter.Serialize(stream, dt);
        return stream.GetBuffer();
    }

    public object DTDeserialize(byte[] buffer)
    {
        MemoryStream stream = new MemoryStream(buffer);
        System.Runtime.Serialization.IFormatter formatter = new BinaryFormatter();
        return formatter.Deserialize(stream) as object;
    }

和这个调用方法代码

        List<Series> ser = new List<Series>();
        foreach (Series item in chartControl1.Series)
        {
            ser.Add(item);
        }

byte[] btt = DTSerialize(ser);

但是当我调用代码时,这个异常抛出

类型为"System.Runtime.Serialization"的未处理异常。SerializationException'发生在mscorlib.dll

附加信息:键入"DevExpress.XtraCharts"。系列的Assembly 'DevExpress.XtraCharts.v14.1, Version=14.1.4.0,Culture=neutral, PublicKeyToken=b88d1754d700e49a'没有标记为可序列化的。

c#序列化异常

您正在尝试序列化具有[Serializable]属性的非市场对象,即它将不起作用。

可以从任何程序集中序列化对象。请查看下面的链接。它可能对你有帮助。

如何序列化/反序列化从另一个程序集加载的对象?