У меня есть сервер python и клиент c#.
Я отправляю данные со своего сервера после того, как использовал
elem = msgpack.packb(data, use_bin_type=True)
Однако на стороне клиента десериализация равна нулю
Это класс:
namespace Elements{
[MessagePackObject(true)]
public class Element
{
[Key(0)]
public SortedDictionary<string, SortedDictionary<string, ushort[,]>> elements;
}
Я сгенерировал преобразователь и форматировщик, и после того, как я попытался выполнить десериализацию, как это
byte[] z - data retrieved from the server
var resolver = MessagePack.Resolvers.CompositeResolver.Create(
MessagePack.Resolvers.Elements.Instance // generated resolver
);
var options = MessagePackSerializerOptions.Standard.WithResolver(resolver);
var ds = MessagePackSerializer.Deserialize<Element>(z,options);
ds был нулевым
PS: Я должен упомянуть, что десериализация с помощью JSON. NET работала, но слишком медленно, чтобы служить моей цели.