/// <summary> /// 将本 <see cref="Kei.KNetwork.KMessageHeader"/> 的所有信息编码进一个字节数组。 /// </summary> /// <returns>含有本 <see cref="Kei.KNetwork.KMessageHeader"/> 所有信息的字节数组。</returns> public byte[] ToByteArray() { var ret = new byte[Marshal.SizeOf(typeof(KMessageHeader))]; int n = 0; byte[] buffer; buffer = BitConverter.GetBytes(HeaderLength); Array.Copy(buffer, 0, ret, n, buffer.Length); n += buffer.Length; buffer = BitConverter.GetBytes(HeaderVersion); Array.Copy(buffer, 0, ret, n, buffer.Length); n += buffer.Length; buffer = BitConverter.GetBytes(MessageID); Array.Copy(buffer, 0, ret, n, buffer.Length); n += buffer.Length; buffer = BitConverter.GetBytes((int)Code); Array.Copy(buffer, 0, ret, n, buffer.Length); n += buffer.Length; buffer = SourceEndPoint.ToByteArray(); Array.Copy(buffer, 0, ret, n, buffer.Length); n += buffer.Length; return(ret); }