public static IServiceCollection RegisterConfigurationServices(this IServiceCollection services, HostBuilderContext context) { var connectionStrings = new ConnectionStrings(); var queueSettings = new QueueSettings(); context.Configuration.GetSection("ConnectionStrings").Bind(connectionStrings); context.Configuration.GetSection("QueueSettings").Bind(queueSettings); services.AddSingleton(connectionStrings); services.AddSingleton(queueSettings); return(services); }
public static IServiceCollection RegisterQueueServices(this IServiceCollection services, HostBuilderContext context) { var queueSettings = new QueueSettings(); context.Configuration.GetSection("QueueSettings").Bind(queueSettings); services.AddMassTransit(c => { c.AddConsumer <ProjectChangedConsumer>(); }); services.AddSingleton(provider => Bus.Factory.CreateUsingRabbitMq(cfg => { cfg.Host(queueSettings.HostName, queueSettings.VirtualHost, h => { h.Username(queueSettings.UserName); h.Password(queueSettings.Password); }); //cfg.SetLoggerFactory((ILoggerFactory)provider.GetService(typeof(ILoggerFactory))); })); return(services); }