Как использовать Primitive API в MessagePack? - PullRequest
0 голосов
/ 05 июня 2019

Я пытаюсь сериализовать и десереализовать так:

 var mem = new MemoryStream();
 MessagePackBinary.WriteInt64(mem, 1580358);
 var result = MessagePackBinary.ReadInt64(mem);` 
 //System.InvalidOperationException: 'Invalid MessagePack code was detected, code:-1'

Но у меня ошибка.Что я делаю не так?Спасибо!

Использование библиотеки: Репозиторий MessagePack

1 Ответ

3 голосов
/ 05 июня 2019

Вы должны перемотать поток в исходное положение, чтобы прочитать то, что вы там написали:

var mem = new MemoryStream();
MessagePackBinary.WriteInt64(mem, 1580358);
mem.Seek(0, SeekOrigin.Begin); // added
var result = MessagePackBinary.ReadInt64(mem);
Console.WriteLine(result);
...