修复使用 MsgPack.Cli 时的 'obsolete' 警告
Fixing 'obsolete' warning when using MsgPack.Cli
我正在使用 MsgPack.Cli 为我创建的会话 class 编写自定义序列化程序。使用 this tutorial on the MsgPack.Cli github page 创建 class 后,我收到此警告:
Warning: 'MessagePackSerializer.MessagePackSerializer()' is obsolete: 'Use MessagePackSerializer(SerializationContext) instead.'
我无法确定什么更改可以修复此警告。我认为不需要 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();
}
}
我正在使用 MsgPack.Cli 为我创建的会话 class 编写自定义序列化程序。使用 this tutorial on the MsgPack.Cli github page 创建 class 后,我收到此警告:
Warning: 'MessagePackSerializer.MessagePackSerializer()' is obsolete: 'Use MessagePackSerializer(SerializationContext) instead.'
我无法确定什么更改可以修复此警告。我认为不需要 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();
}
}