public IServiceBusManager SubscribeCommand <T>(string serviceNamespace = null) where T : ICommand { var handler = _handlerFactory.ResolveCommandHandler <T>(); if (handler is null) { throw new InvalidOperationException("Please register the command handler for: " + typeof(T).Name); } var serviceFrom = _serviceSettings.Name; var queue = _serviceBusQueueFactory.CreateServiceBusQueue(); var name = $"{serviceFrom}/{typeof(T).Name}"; queue.DeclareQueue(name); queue.Bind(_serviceSettings.Name, $"{serviceFrom}.{typeof(T).Name}"); _serviceBusMessageSubscriber.Subscribe <T>(name, async(message, info) => await handler.HandleAsync(message, info)); return(this); }