public static void Serialize <T>(T item, Stream target) { MsgPackItem packed = SerializeObject(item); byte[] buffer = packed.ToBytes(); target.Write(buffer, 0, buffer.Length); return; }
public override byte[] ToBytes() { List <byte> bytes = new List <byte>();// cannot estimate this one MsgPackTypeId typeId = GetTypeId(value.LongLength); if (typeId == MsgPackTypeId.MpArray4) { bytes.Add(GetLengthBytes(typeId, value.Length)); } else { bytes.Add((byte)typeId); bytes.AddRange(GetLengthBytes(value.LongLength, SupportedLengths.FromShortUpward)); } for (int t = 0; t < value.Length; t++) { MsgPackItem item = MsgPackItem.Pack(value[t], _settings); bytes.AddRange(item.ToBytes()); } return(bytes.ToArray()); }