public void Send(TransportMessage message, Address address)
 {
     if (eventSourcedUnitOfWork.IsInitialized)
     {
         eventSourcedUnitOfWork.Publish(message.ToIndirectCommandEventData(address));
     }
     if (Transaction.Current != null)
     {
         transactionalUnitOfWork.Send(message.ToIndirectCommandEventData(address));
     }
     else
     {
         connectionManager.GetConnection()
         .AppendToStream(address.GetReceiveAddressFrom(EndpointAddress), ExpectedVersion.Any, message.ToDirectCommandEventData(address));
     }
 }
 public void Send(TransportMessage message, Address address)
 {
     if (eventSourcedUnitOfWork.IsInitialized)
     {
         eventSourcedUnitOfWork.Publish(message.ToIndirectCommandEventData(address));
     }
     if (Transaction.Current != null)
     {
         transactionalUnitOfWork.Send(message.ToIndirectCommandEventData(address));
     }
     else
     {
         connectionManager.GetConnection()
                      .AppendToStream(address.GetReceiveAddressFrom(EndpointAddress), ExpectedVersion.Any, message.ToDirectCommandEventData(address));
     }
 }