我有一个简单的控制台应用程序,每天运行(由 Windows 任务计划程序调用),并且取决于每次应用程序运行时递增的值。为了保留这个值,我选择使用 Settings.Settings 文件。
因此,我有一个名为 RunNumber 和 Scope User 的整数值,每次应用程序完成运行时该值都会递增:
Properties.Settings.Default.RunNumber++;
Properties.Settings.Default.Save();
我选择这个的部分原因是该值也被放入 app.config 文件中:
<setting name="RunNumber" serializeAs="String">
<value>0</value>
</setting>
这意味着如果 RunNumber 必须意外增加,则可以在 app.config 中进行更改:
<setting name="RunNumber" serializeAs="String">
<value>10</value>
</setting>
我的期望是,下次我的应用程序去读取 RunNumber 的值时,它将采用 app.config 中设置的值(在本例中为 10)。这种情况不会发生,而是下次运行应用程序时,它将使用上次修改的值,在这种情况下,运行编号将为 1,而不是我期望的 10。
我的应用程序像这样访问 RunNumber 的值:
Properties.Settings.Default.RunNumber
如何在不修改应用程序的情况下更改 RunNumber 的值?我的想法是,如果需要意外更改为某个值,我可以只修改 app.config 中的值,而不必更改一些代码并重新部署应用程序。