예제 #1
0
        /// <summary>
        /// Registers <see cref="IEmailSender"/> that point to inmemory queue
        /// </summary>
        /// <param name="container"></param>
        public static void RegisterEmailSenderViaInmemoryQueueMessageProducer(this ContainerBuilder container)
        {
            var messageProducer = new EmailMessageQueueProducer(new QueueExtInMemory());
            var emailSender     = new EmailSender(messageProducer);

            container.RegisterInstance <IEmailSender>(emailSender);
        }
예제 #2
0
        /// <summary>
        /// Registers <see cref="IEmailSender"/> that point to Azure queue
        /// </summary>
        /// <param name="container"></param>
        /// <param name="connectionString">Queue connection string</param>
        /// <param name="queueName">Queue name</param>
        public static void RegisterEmailSenderViaAzureQueueMessageProducer(this ContainerBuilder container, IReloadingManager <string> connectionString, string queueName = "emailsqueue")
        {
            var messageProducer = new EmailMessageQueueProducer(AzureQueueExt.Create(connectionString, queueName));
            var emailSender     = new EmailSender(messageProducer);

            container.RegisterInstance <IEmailSender>(emailSender);
        }