public AzureServiceBusReceiver(
     string azureServiceBusConnectionString,
     string serviceBusTopic,
     string serviceBusSubscription,
     ISqlTransactionalOutboxItemFactory <TUniqueIdentifier, TPayload> outboxItemFactory,
     AzureServiceBusReceivingOptions options = null
     ) : this(InitAzureServiceBusConnection(azureServiceBusConnectionString, options), serviceBusTopic, serviceBusSubscription, outboxItemFactory, options)
 {
     DisposingEnabled = true;
 }
        public AzureServiceBusReceiver(
            ServiceBusClient azureServiceBusClient,
            string serviceBusTopic,
            string serviceBusSubscription,
            ISqlTransactionalOutboxItemFactory <TUniqueIdentifier, TPayload> outboxItemFactory,
            AzureServiceBusReceivingOptions options = null
            )
        {
            this.Options = options ?? new AzureServiceBusReceivingOptions();
            this.AzureServiceBusClient = azureServiceBusClient.AssertNotNull(nameof(azureServiceBusClient));
            this.OutboxItemFactory     = outboxItemFactory.AssertNotNull(nameof(outboxItemFactory));

            this.ServiceBusTopic        = serviceBusTopic.AssertNotNullOrWhiteSpace(nameof(serviceBusTopic));
            this.ServiceBusSubscription = serviceBusSubscription.AssertNotNullOrWhiteSpace(nameof(serviceBusSubscription));
        }