Я знаю, что могу открыть конфигурационные файлы, связанные с сборкой со статическим методом ConfigurationManager.OpenExe(exePath)
, но я просто хочу открыть конфигурацию, не связанную с сборкой. Просто стандартный файл конфигурации .NET.
Загрузка пользовательских файлов конфигурации
Ответ 1
статьи, опубликованные Рики, очень хорошие, но, к сожалению, они не отвечают на ваш вопрос.
Чтобы решить вашу проблему, вы должны попробовать этот фрагмент кода:
ExeConfigurationFileMap configMap = new ExeConfigurationFileMap();
configMap.ExeConfigFilename = @"d:\test\justAConfigFile.config.whateverYouLikeExtension";
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigurationUserLevel.None);
Ответ 2
Конфигурационный файл - это просто файл 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");
Ответ 3
Я бы использовал ConfigurationManager.OpenMappedExeConfiguration
.