public async Task Initialize() { if (_initialized) { throw new InvalidOperationException("Object is already initialized."); } NamespaceManager = NamespaceManager.CreateFromConnectionString(_connString); MessagingFactory = MessagingFactory.CreateFromConnectionString(_connString); // Create topics and queues await EnsureTopics(); if (!_pairConnString.IsNullOrWhiteSpace()) { var pairManager = NamespaceManager.CreateFromConnectionString(_pairConnString); var pairFactory = MessagingFactory.CreateFromConnectionString(_pairConnString); var pairOpts = new SendAvailabilityPairedNamespaceOptions(pairManager, pairFactory, 10, TimeSpan.FromMinutes(1), true); // Look at pairOpts defaults and message factory retry options await MessagingFactory.PairNamespaceAsync(pairOpts); Paired = true; } _initialized = true; }
protected void CreatePairedNamespaceManager(string pairedConnectionStringName) { var pairedConnectionString = CloudConfigurationManager.GetSetting(pairedConnectionStringName); var pairedNamespaceManager = NamespaceManager.CreateFromConnectionString(pairedConnectionString); var pairedMessagingFactory = MessagingFactory.CreateFromConnectionString(pairedConnectionString); var pairedNamespaceOptions = new SendAvailabilityPairedNamespaceOptions(pairedNamespaceManager, pairedMessagingFactory); MessagingFactory.PairNamespaceAsync(pairedNamespaceOptions).Wait(); }