This code works, but it destroys comments and formatting in Web.config. Is there a way to write to Web.config that won't destroy formatting?
var webConfig = WebConfigurationManager.OpenWebConfiguration("~");
var settings = webConfig.AppSettings.Settings;
settings["Foo"].Value = "Bar";
webConfig.Save();
You can use Visual Studio API, load Web.config and call
Format Document
against itMaybe you can open the web.config as a standard xml file and use Xpath to locate the node you want to change.