I can't write into config file
c#, configuration
Solution
check YourExeName.config file instead of app.config
Problem
I am using this class for writing into config file. Code is builted and app starts, but every time I check app.config I don't see anything written inside. What could be the problem? Here is the code: ``` public class ConfigSettings { private ConfigSettings() { } public static string ReadSetting(string key) { return ConfigurationManager.AppSettings[key]; } public static void WriteSetting(string key, string value) { // load config document for current assembly XmlDocument doc = loadConfigDocument(); // retrieve appSettings node XmlNode node = doc.SelectSingleNode("//appSettings"); if (node == null) throw new InvalidOperationException("appSettings section not found in config file."); try { // select the 'add' element that contains the key XmlElement elem = (XmlElement)node.SelectSingleNode(string.Format("//add[@key='{0}']", key)); if (elem != null) { // add value for key elem.SetAttribute("value", value); } else { // key was not found so create the 'add' element // and set it's key/value attributes elem = doc.CreateElement("add"); elem.SetAttribute("key", key); elem.SetAttribute("value", value); node.AppendChild(elem); } doc.Save(getConfigFilePath()); } catch { throw; } } public static void RemoveSetting(string key) { // load config document for current assembly XmlDocument doc = loadConfigDocument(); // retrieve appSettings node XmlNode node = doc.SelectSingleNode("//appSettings"); try { if (node == null) throw new InvalidOperationException("appSettings section not found in config file."); else { // remove 'add' element with coresponding key node.RemoveChild(node.SelectSingleNode(string.Format("//add[@key='{0}']", key))); doc.Save(getConfigFilePath()); } } catch (NullReferenceException e) { throw new Exception(string.Format("The key {0} does not exist.", key), e); } } 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); } } private static string getConfigFilePath() { return AppDomain.CurrentDomain.GetData("APP_CONFIG_FILE").ToString(); } } ``` After that I use this to write into file: ``` ConfigSettings.WriteSetting("check", "true"); ```