修复了使用 MsgPack.CLI 时'obsolete'警告



我正在使用MsgPack.Cli为我创建的会话类编写自定义序列化程序。在 MsgPack.Cli github 页面上使用本教程创建类后,我收到以下警告:

警告:"MessagePackSerializer.MessagePackSerializer(

("已过时:"改用 MessagePackSerializer(SerializationContext(。

我无法弄清楚什么更改可以解决此警告。我不认为MessagePackSerializer的知识是必要的,以帮助我解决这个问题;我根本不明白警告的语法。

我的代码包含在下面:

namespace Something_Networky
{
    public class Session
    {
        private int _n;
        public int n { get; }
        public Session(int n)
        {
            this._n = n;
        }
    }
    public class SessionSerializer : MessagePackSerializer<Session>
    {
        public SessionSerializer() : this(SerializationContext.Default) { }
        public SessionSerializer(SerializationContext context) // Warning displayed on this line
        {
        }
        protected override void PackToCore(Packer packer, Session value)
        {
            throw new NotImplementedException();
        }
        protected override Session UnpackFromCore(Unpacker unpacker)
        {
            throw new NotImplementedException();
        }
    }
}

感谢您的帮助。

我已经修复了错误。工作代码如下;我没有使用正确的参数调用基构造函数。

public class SessionSerializer : MessagePackSerializer<Session>
{
    public SessionSerializer(SerializationContext context) : base(context) {
        throw new NotImplementedException();
    }
    protected override void PackToCore(Packer packer, Session objectTree)
    {
        throw new NotImplementedException();
    }
    protected override Session UnpackFromCore(Unpacker unpacker)
    {
        throw new NotImplementedException();
    }
}

相关内容

  • 没有找到相关文章

最新更新