Відповіді:
статті, розміщені Рікі, дуже хороші, але, на жаль, вони не відповідають на ваше запитання.
Щоб вирішити свою проблему, слід спробувати цей фрагмент коду:
ExeConfigurationFileMap configMap = new ExeConfigurationFileMap();
configMap.ExeConfigFilename = @"d:\test\justAConfigFile.config.whateverYouLikeExtension";
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigurationUserLevel.None);
Якщо вам потрібно отримати доступ до значення в налаштуваннях, ви можете скористатися оператором індексу:
config.AppSettings.Settings["test"].Value;
ConfigurationManager.ConnectionStrings
. Натомість вам слід прочитати значення з config
об’єкта, поверненого з останнього твердження вище.
Конфігураційний файл - це лише XML-файл, відкрити його можна за допомогою:
private static XmlDocument loadConfigDocument()
{
XmlDocument doc = null;
try
{
doc = new XmlDocument();
doc.Load(getConfigFilePath());
return doc;
}
catch (System.IO.FileNotFoundException e)
{
throw new Exception("No configuration file found.", e);
}
catch (Exception ex)
{
return null;
}
}
і пізніше отримання значень за допомогою:
// retrieve appSettings node
XmlNode node = doc.SelectSingleNode("//appSettings");
throw new Exception("No configuration file found.", e);
.
Я б користувався ConfigurationManager.OpenMappedExeConfiguration
.
whateverYouLikeExtension
, ти маєш на увазі, що ти повинен щось мати післяconfig.
?