title: How do you modify the web.config appSettings at runtime?
body: <p>I am confused on how to modify the web.config appSettings values at runtime. For example, I have this appSettings section:</p>
  
  <pre><code>&lt;appSettings&gt;
    &lt;add key="productspagedesc" value="TODO: Edit this default message" /&gt;
    &lt;add key="servicespagedesc" value="TODO: Edit this default message" /&gt;
    &lt;add key="contactspagedesc" value="TODO: Edit this default message" /&gt;
    &lt;add key="aboutpagedesc" value="TODO: Edit this default message" /&gt;
    &lt;add key="homepagedesc" value="TODO: Edit this default message" /&gt;
   &lt;/appSettings&gt;
  </code></pre>
  
  <p>Let's say, I want to modify the "homepagedesc" key at runtime. I tried ConfigurationManager and WebConfigurationManager static classes, but the settings are "read-only". How do I modify appSettings values at runtime?</p>
  
  <p>UPDATE:
  Ok, so here I am 5 years later. I would like to point out that experience has told me, we should not put any configuration that intentionally is editable at runtime in the web.config file but instead we should put it in a separate XML file as what one of the users commented below. This will not require any of edit of web.config file to restart the App which will result with angry users calling you.</p>