59 lines
1.7 KiB
C#
59 lines
1.7 KiB
C#
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();
|
|
}
|
|
}
|
|
}
|