public byte[] Serialize()
{
IntPtr requestBuffer = new IntPtr();
byte[] serializedBuffer = new byte[this.Size()];
requestBuffer = Marshal.AllocHGlobal(this.Size());
try
{
Marshal.StructureToPtr(this, requestBuffer, true);
Marshal.Copy(requestBuffer, serializedBuffer, 0, this.Size());
return serializedBuffer;
}
finally
{
Marshal.FreeHGlobal(requestBuffer);
}
}