0

// 将 LastRun 设置为现在
config.AppSettings.Settings["LastRun"].Value = DateTime.Now.ToString(); // 保存所有设置 config.Save(ConfigurationSaveMode.Modified);

此代码在我的开发服务器中运行良好,但在我的生产服务器中运行良好。我的程序似乎无法与我的 app.config 文件通信。我已经检查了所有的“明显”。. 有任何想法吗 ... ?

4

1 回答 1

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中找到。

于 2013-04-02T20:30:17.827 回答