//将LastRun设置为现在
config.AppSettings.Settings [“LastRun”]。Value = DateTime.Now.ToString(); //保存所有设置 config.Save(ConfigurationSaveMode.Modified);
此代码在我的开发服务器中正常运行,但在我的生产服务器中运行不正常。好像我的程序无法与我的app.config文件通信。我检查了所有“明显的”。 。有任何想法吗 ... ?
答案 0 :(得分:2)
从您的代码示例中,我无法判断您的配置变量是如何初始化的。但是,从评论中,您有一个网络应用程序。除非您尝试加载特定的app.config文件,否则Web应用程序将尝试从web.config获取AppSettings。
以编程方式更改web.config的值不是一个好主意。更改web.config将导致应用程序重新启动。
如果您有一个不同的app.config来存储此类信息,那么这比尝试更改web.config更好。但是你必须专门加载文件,如下所示:
Configuration config = WebConfigurationManager.OpenWebConfiguration("yourPath\app.config");
ConfigurationManager.OpenExeConfiguration()
旨在用于可执行应用程序而非Web应用程序。尝试使用WebConfigurationManager
,如上所示。
您可以在此SO question/answers中找到更多信息。
可在此SO question/answer中找到更多信息。