Можно ли сериализовать только несколько свойств класса?Например:
public class Client
{
[ProtoMember(1)]
public int Id { get; set; }
[ProtoMember(2)]
public string Name { get; set; }
public int Age { get; set; }
[ProtoMember(3)]
public string Guid { get; set; }
}
Таким образом, я получаю неверное значение «Id».Другие свойства верны.Если я заполню все свойства «[ProtoMember]», значение «id» будет правильным.Почему?
На самом деле ошибка вызвана другими причинами, по которым вы можете мне помочь.
Я конвертирую String в Stream для выполнения задач.Во время обратного преобразования я имею ошибку в значении Id
var cli = new Client
{ Id = 222, Guid = "52369-fe5r6-74e2g-j1i4e", Age = 29, Name = "José"};
//Serialize
var ms = new MemoryStream();
Serializer.Serialize(ms, cli);
ms.Position = 0;
var reader = new StreamReader(ms);
var strStream = reader.ReadToEnd();
//Deserialize
var ms2 = new MemoryStream(Encoding.UTF8.GetBytes(strStream));
var obj = Serializer.Deserialize<Client>(ms2);
Таким образом, любое значение выше 127 преобразуется в другой Int.Пример: 3104751
Мое преобразование неверно?
Obs: Извините, плохой английский