0
0
mirror of https://github.com/alex289/CleanArchitecture.git synced 2025-07-01 19:12:57 +00:00
CleanArchitecture/CleanArchitecture.Domain/Rabbitmq/Extensions/ServiceCollectionExtensions.cs
2023-09-02 10:56:20 +02:00

22 lines
719 B
C#

using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
namespace CleanArchitecture.Domain.Rabbitmq.Extensions;
public static class ServiceCollectionExtensions
{
public static IServiceCollection AddRabbitMqHandler(
this IServiceCollection services,
IConfiguration configuration,
string rabbitMqConfigSection)
{
var rabbitMq = new RabbitMqConfiguration();
configuration.Bind(rabbitMqConfigSection, rabbitMq);
services.AddSingleton(rabbitMq);
services.AddSingleton<RabbitMqHandler>();
services.AddHostedService(serviceProvider => serviceProvider.GetService<RabbitMqHandler>()!);
return services;
}
}