日期:2014-05-17  浏览次数:20724 次

config配置的写入问题
大家好!

这个是我写的写入配置文件的方法没有一个是生效了
ConfigurationManager.AppSettings.Set("currentpage", textBox1.Text);
            //ConfigurationManager.AppSettings.Set("pagesize", textBox2.Text);
            System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            config.AppSettings.Settings["pagesize"].Value = textBox2.Text;
            config.Save(ConfigurationSaveMode.Modified);
            this.Close();

ConfigurationManager.AppSettings.Set("currentpage", textBox1.Text);//这句话我不知道是怎么回事,执行后,你可以获取到,但是你打开app.config和vshost.exe.Config 都没有写入

System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            config.AppSettings.Settings["pagesize"].Value = textBox2.Text;
            config.Save(ConfigurationSaveMode.Modified);
这个方法写入到vshost.exe.Config里去了,但是获取不到。
这两个问题真心不知道出错在哪里,网上都说第二个方法才是写入配置文件的,但是我没有成功写入。请指教!

...验证码能不能弄看的清楚的啊。发个贴好难啊

------解决方案--------------------
这问题我也遇到了
------解决方案--------------------
你的配置文件是不是用户级别的?用户级别的配置文件是存放在c盘的,xp的路径是C:\Documents and Settings\Administrator\Local Settings\Application Data
------解决方案--------------------
string appPath = System.IO.Path.GetDirectoryName(Reflection.Assembly.GetExecutingAssembly().Location);          
string configFile = System.IO.Path.Combine(appPath, "App.config");
ExeConfigurationFileMap configFileMap = new ExeConfigurationFileMap();         
configFileMap.ExeConfigFilename = configFile;          
System.Configuration.Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFileMap, ConfigurationUserLevel.None);

config.AppSettings.Settings["pagesize"].Value = textBox2.Text;

config.Save(); 
  
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
------解决方案--------------------
引用:
  string appPath = System.Environment.CurrentDirectory;