using System.IO; using Microsoft.Extensions.Configuration; namespace SecureCore { public static class AppSettingsManager { public static bool TryGetConnectionString(string connectionStringName, out string connectionString) { connectionString = string.Empty; try { connectionString = GetConfiguration().GetConnectionString(connectionStringName); if (!string.IsNullOrEmpty(connectionString)) return true; else return false; } catch { return false; } } public static bool TryGetSettingString(string sectionName, string key, out string setting) { setting = string.Empty; try { setting = GetConfiguration().GetSection(sectionName)[key]; if(!string.IsNullOrEmpty(setting)) return true; else return false; } catch { return false; } } public static bool TryGetSettingInt(string sectionName, string key, out int setting) { setting = 0; try { var settingString = GetConfiguration().GetSection(sectionName)[key]; if (int.TryParse(settingString, out setting)) return true; else return false; } catch { return false; } } private static IConfigurationRoot GetConfiguration() { return new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json") .Build(); } } }