public object Post(
            [FromServices] ServiceBusConfigurations configurations,
            [FromBody] Conteudo conteudo)
        {
            lock (_CONTADOR)
            {
                _CONTADOR.Incrementar();

                string message =
                    $"{DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")} - " +
                    $"Conteúdo da Mensagem: {conteudo.Mensagem}";
                var body = Encoding.UTF8.GetBytes(message);

                var client = new QueueClient(
                    configurations.ConnectionString,
                    configurations.QueueName,
                    ReceiveMode.ReceiveAndDelete);
                client.SendAsync(new Message(body)).Wait();

                return(new
                {
                    Resultado = "Mensagem encaminhada com sucesso"
                });
            }
        }
コード例 #2
0
        internal static void ConfigureMessageBrokers(this IServiceCollection services, IConfiguration configuration)
        {
            var serviceBusConfigurations = new ServiceBusConfigurations();

            configuration.Bind("ServiceBus", serviceBusConfigurations);

            services.AddSingleton(serviceBusConfigurations);

            services.AddSingleton <DemoFactory>();

            services.AddTransient <DefaultDemo>();

            services.AddTransient <SimpleServiceBusMessageBrokerDemo>();

            services.AddTransient <ChatServiceBusMessageBrokerDemo>();

            services.AddTransient <DuplicateServiceBusMessageBrokerDemo>();
        }
コード例 #3
0
        public object CarregarCotacoes(
            [FromServices] ServiceBusConfigurations configurations)
        {
            string conteudo = "Solicitação de Carga - " +
                              $"API Cotacoes - {DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")}";
            var body = Encoding.UTF8.GetBytes(conteudo);

            var client = new QueueClient(
                configurations.ConnectionString,
                configurations.QueueName,
                ReceiveMode.ReceiveAndDelete);

            client.SendAsync(new Message(body)).Wait();

            return(new
            {
                Resultado = "Mensagem encaminhada com sucesso"
            });
        }
コード例 #4
0
 public ChatServiceBusMessageBrokerDemo(ILogger <ChatServiceBusMessageBrokerDemo> logger, ServiceBusConfigurations configurations)
 {
     _logger         = logger;
     _configurations = configurations;
 }
コード例 #5
0
 public DuplicateServiceBusMessageBrokerDemo(ILogger <DuplicateServiceBusMessageBrokerDemo> logger, ServiceBusConfigurations configurations)
 {
     _logger         = logger;
     _configurations = configurations;
 }