public override byte[] Serialize()
{
int index = 0;
byte[] resultBytes = new byte[this.Size()];
Array.Copy(BitConverter.GetBytes((ushort)this.PropertyType), 0, resultBytes, index, sizeof(ushort));
index += 2;
Array.Copy(base.Serialize(), 0, resultBytes, index, base.Size());
index += base.Size();
return resultBytes;
}