static object[] ExtractTransportMessageData(TransportMessage message, SendOptions sendOptions) { var data = new object[7]; data[IdColumn] = Guid.Parse(message.Id); data[CorrelationIdColumn] = GetValue(message.CorrelationId); if (sendOptions.ReplyToAddress != null) { data[ReplyToAddressColumn] = sendOptions.ReplyToAddress.ToString(); } else if (message.ReplyToAddress != null) { data[ReplyToAddressColumn] = message.ReplyToAddress.ToString(); } else { data[ReplyToAddressColumn] = DBNull.Value; } data[RecoverableColumn] = message.Recoverable; if (message.TimeToBeReceived == TimeSpan.MaxValue) { data[TimeToBeReceivedColumn] = DBNull.Value; } else { data[TimeToBeReceivedColumn] = message.TimeToBeReceived.TotalMilliseconds; } data[HeadersColumn] = HeaderSerializer.SerializeObject(message.Headers); if (message.Body == null) { data[BodyColumn] = DBNull.Value; } else { data[BodyColumn] = message.Body; } return(data); }