Переопределить настройки конфигурации

У меня есть файл конфигурации, который используется в нескольких проектах, general.config , выглядит так:

<?xml version="1.0" encoding="utf-8" ?>
<appSettings>
   <add key="mykey1" value="myvalue1"/>    
   <add key="mykey2" value="myvalue2"/>
</appSettings>

В одном из проектов мне нужно переопределить одну из двух настроек. Итак, app.config этого проекта выглядит так:

<?xml version="1.0"?>
<configuration>
  <appSettings file="general.config">
    <remove key="mykey1"/>
    <add key="mykey1" value="anothervalue"/>
    <add key="mykey3" value="myvalue3"/>
  </appSettings>  
</configuration>

Но remove здесь не работает. Как я могу переопределить mykey1 , не нарушая mykey2 ? add работает в этом случае. Я могу получить myvalue3 из ConfigurationManager .

РЕДАКТИРОВАТЬ: general.config автоматически копируется в папку вывода при компиляции. Не беспокойтесь о пути. В настоящее время у меня есть:

ConfigurationManager.AppSettings["mykey1"] 
     //I got "myvalue1", but I want "anothervalue" here
     //that is, this item is "overrided", just like virtual methods in C#
ConfigurationManager.AppSettings["mykey2"] 
     //this setting will not be modified, currently it works fine
ConfigurationManager.AppSettings["mykey3"]   //good 
10
задан Cheng Chen 29 June 2011 в 06:36
поделиться