Skip to content

Exception when serializing generic property #119

@KingTopas

Description

@KingTopas

Two classes:

public abstract class A
{
public virtual TId Id { get; set; }
}

public class B : A:
{
}

An exception is thrown when creating serializer for an instance of class B:

Void set_Id method (Int32) can not be solved because the declarative type descriptor methods A`1 [tid] is generic. Explicitly specify the type of declaration GetMethodFromHandle.

System.Reflection.MethodBase.GetMethodFromHandle(RuntimeMethodHandle handle) +11045317
MsgPack.Serialization.EmittingSerializers.FieldBasedSerializerEmitter.CreateConstructor() in d:\build\msgpack-cli-latest\src\MsgPack\Serialization\EmittingSerializers\FieldBasedSerializerEmitter.cs:448
MsgPack.Serialization.EmittingSerializers.SerializerEmitter.CreateInstance(SerializationContext context, PolymorphismSchema schema) in d:\build\msgpack-cli-latest\src\MsgPack\Serialization\EmittingSerializers\SerializerEmitter.cs:130
MsgPack.Serialization.EmittingSerializers.<>c__DisplayClass6f.b__6e(SerializationContext context) in d:\build\msgpack-cli-latest\src\MsgPack\Serialization\EmittingSerializers\ILEmittingSerializerBuilder2.cs:1028 MsgPack.Serialization.AbstractSerializers.SerializerBuilder3.BuildSerializerInstance(SerializationContext context, Type concreteType, PolymorphismSchema schema) in d:\build\msgpack-cli-latest\src\MsgPack\Serialization\AbstractSerializers\SerializerBuilder`3.cs:201
MsgPack.Serialization.MessagePackSerializer.CreateInternal(SerializationContext context, PolymorphismSchema schema) in d:\build\msgpack-cli-latest\src\MsgPack\Serialization\MessagePackSerializer.cs:308
MsgPack.Serialization.SerializationContext.GetSerializer(Object providerParameter) in d:\build\msgpack-cli-latest\src\MsgPack\Serialization\SerializationContext.cs:691
MsgPack.Serialization.MessagePackSerializer.Get(SerializationContext context, Object providerParameter) in d:\build\msgpack-cli-latest\src\MsgPack\Serialization\MessagePackSerializer.cs:209
MsgPack.Serialization.MessagePackSerializer.Create(SerializationContext context) in d:\build\msgpack-cli-latest\src\MsgPack\Serialization\MessagePackSerializer.cs:106
MsgPack.Serialization.MessagePackSerializer.Create() in d:\build\msgpack-cli-latest\src\MsgPack\Serialization\MessagePackSerializer.cs:80

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugDetected as bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions