Beispiel #1
0
        /// <summary>
        /// 添加管理提供者
        /// </summary>
        /// <param name="service"></param>
        public static void AddManageProvider(this IServiceCollection service)
        {
            service.TryAddSingleton <IHttpContextAccessor, HttpContextAccessor>();
            service.TryAddSingleton <IManageProvider, ManageProvider2>();
            //service.TryAddSingleton(ManageProvider2.Provider);

            ManageProvider.Provider = service.BuildServiceProvider().GetService <IManageProvider>();
        }
        public static void AddRabbitMqHandler <T>(this IServiceCollection services, bool subscribeToQueue) where T : class
        {
            var sp       = services.BuildServiceProvider();
            var bus      = sp.GetService <IBus>();
            var repoLite = sp.GetService <IRabbitMqBackupLiteDbService>();
            var repo     = sp.GetService <IRabbitMqBackupService>();

            var obj = (T)Activator.CreateInstance(typeof(T), services, bus, repo, repoLite, subscribeToQueue);

            services.AddSingleton(obj);
        }
        } // End Constructor

        System.IServiceProvider UniversalService.IStartup
        .ConfigureServices(Microsoft.Extensions.DependencyInjection.IServiceCollection services)
        {
            services.AddLogging();

            // Inject common service
            services.AddSingleton(typeof(UniversalService.ICommonService), typeof(CommonSampleService));



            // My configuration
            services.AddSingleton(new MyConfig());

            services.Configure <SmtpConfig>(
                delegate(SmtpConfig config)
            {
                config.Server = "hello world";
                return;
            }
                );

            return(services.BuildServiceProvider());
        }
 public static T GetService <T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services)
 {
     return(services.BuildServiceProvider().GetService <T>());
 }
Beispiel #5
0
        public static IServiceCollection AddEmerald <TServiceScopeFactory>(this IServiceCollection services, IApplicationConfiguration configuration, Action <EmeraldOptions> options) where TServiceScopeFactory : class, Emerald.System.IServiceScopeFactory
        {
            var serviceCollection          = new System.ServiceCollection(services);
            var applicationName            = configuration.Environment.ApplicationName;
            var emeraldSystemBuilderConfig = EmeraldSystemBuilder.Create <TServiceScopeFactory>(applicationName, serviceCollection);
            var emeraldOptions             = new EmeraldOptions(emeraldSystemBuilderConfig, configuration);

            options(emeraldOptions);
            Registry.EmeraldSystem = emeraldSystemBuilderConfig.RegisterDependencies().Build(services.BuildServiceProvider());
            return(services);
        }
Beispiel #6
0
 void IPlugin.ConfigureServices(Microsoft.Extensions.DependencyInjection.IServiceCollection services)
 {
     ServiceProvider = services.BuildServiceProvider();
     ProductSources.Instance.AddNewSource(ActivatorUtilities.CreateInstance <OpenFoodFactsSource>(ServiceProvider));
 }