public MessageDelivery[] PublishTwoWay(PublishRequest publishRequest, TimeSpan timeout)
{
CorrelatorAsyncResult result = null;
string correlationId = GetResponseCorrelationId(publishRequest);
using (TransactionScope ts = new TransactionScope())
{
result = (CorrelatorAsyncResult)_correlator.BeginWaitForReply(correlationId, null, null);
deliverToSubscriptionEndpoint(timeout, publishRequest);
ts.Complete();
}
_correlator.EndWaitForReply(result);
return result.Results.ToArray();
}