Files
DP44/DataPRO/DataPRO.Core/.svn/pristine/67/67c7b730593d45259aa2697cc019ba7ae3cb1654.svn-base
2026-04-17 14:55:32 -04:00

53 lines
1.7 KiB
Plaintext

using System;
using System.Configuration;
using System.Linq;
namespace DataPro.Core.Config
{
public static class DataProConfig
{
private static readonly Configuration Config;
// static constructor
static DataProConfig()
{
var dataProConfig = new ExeConfigurationFileMap
{
ExeConfigFilename = DataProConstants.CustomConfigPath
};
Config = ConfigurationManager.OpenMappedExeConfiguration(dataProConfig, ConfigurationUserLevel.None, true);
}
/// <summary>
/// Static variable to hold alternate configuration file
/// </summary>
public static Configuration AltConfig
{
get { return Config; }
}
/// <summary>
/// Static method to retrieve a setting from config file
/// </summary>
/// <param name="key">string</param>
/// <returns>string</returns>
public static string GetAppSetting(string key)
{
var appSetting = Config.AppSettings.Settings.Cast<KeyValueConfigurationElement>().FirstOrDefault(setting => setting.Key == key);
return appSetting == null ? String.Empty : appSetting.Value;
}
/// <summary>
/// Static method to get a section from config file. Used by plugin code to get plugin library section.
/// </summary>
/// <param name="sectionName">string</param>
/// <returns>object</returns>
public static object GetSection(string sectionName)
{
return Config.GetSection(sectionName);
}
}
}