public byte[] Serialize()
{
List<byte> result = new List<byte>();
if (this.CountType == CountByte.TwoBytesCount)
{
result.AddRange(BitConverter.GetBytes((ushort)this.RecipientCount));
}
else if (this.CountType == CountByte.FourBytesCount)
{
result.AddRange(BitConverter.GetBytes((uint)this.RecipientCount));
}
// Add data of each RecipientBlock in RecipientsData
foreach (RecipientBlock recipient in this.RecipientsData)
{
result.AddRange(recipient.Serialize());
}
return result.ToArray();
}