using Microsoft.Extensions.Configuration; using System.Collections.Generic; using System.Linq; namespace Infrastructure.Extensions { public static class ConfigurationExtensions { public static Dictionary GetConnectionStringValues(this IConfiguration configuration, string name) { return configuration.GetConnectionString(name).Split(';') .ToDictionary(o => o.Split('=')[0], o => o.Split('=')[1]); } public static string GetAppSetting(this IConfiguration configuration, string name) { return configuration.GetSection("AppSettings").GetValue(name); } public static T GetAppSetting(this IConfiguration configuration, string name, T defaultValue) { return configuration.GetSection("AppSettings").GetValue(name, defaultValue); } public static Dictionary GetAppSettings(this IConfiguration configuration, string name) { return configuration.GetAppSetting(name,"").Split(';') .ToDictionary(o => o.Split('=')[0], o => o.Split('=')[1]); } } }