コード例 #1
0
        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);
        }
コード例 #2
0
ファイル: QueueExtension.cs プロジェクト: zjdyzww/PMIS-1
        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);
        }