From 34f0d92edac05b0de59623e0e77dc0060f6ae56b Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Thu, 4 Jul 2019 14:21:48 -0500 Subject: [PATCH] simplify typed settings configuration --- .../Extensions/ServiceCollectionExtensions.cs | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/FilterLists.Agent/Extensions/ServiceCollectionExtensions.cs b/src/FilterLists.Agent/Extensions/ServiceCollectionExtensions.cs index 4f7745f38..7da38b732 100644 --- a/src/FilterLists.Agent/Extensions/ServiceCollectionExtensions.cs +++ b/src/FilterLists.Agent/Extensions/ServiceCollectionExtensions.cs @@ -20,7 +20,7 @@ public static void RegisterAgentServices(this IServiceCollection services) services.AddConfiguration(); services.AddLoggingCustom(); services.AddTransient(); - services.AddMediatR(typeof(Program).Assembly); + services.AddMediatR(AppDomain.CurrentDomain.GetAssemblies()); services.AddAgentHttpClient(); services.AddSingleton(); services.AddSingleton(); @@ -37,12 +37,15 @@ private static void AddConfiguration(this IServiceCollection services) .AddJsonFile("appsettings.Development.json", true, true) #endif .Build(); - services.Configure( - config.GetSection(nameof(ApplicationInsightsSettings).RemoveSettingsSuffix())); - services.Configure( - config.GetSection(nameof(ConnectionStringsSettings).RemoveSettingsSuffix())); - services.Configure( - config.GetSection(nameof(GitHubSettings).RemoveSettingsSuffix())); + services.ConfigureCustom(config); + services.ConfigureCustom(config); + services.ConfigureCustom(config); + } + + private static void ConfigureCustom(this IServiceCollection services, IConfiguration configuration) + where TSettings : class + { + services.Configure(configuration.GetSection(typeof(TSettings).Name.RemoveSettingsSuffix())); } private static string RemoveSettingsSuffix(this string section)