在Windows服务中保留变量的可接受方式是什么

时间:2011-10-28 09:54:27

标签: c# .net .net-4.0 windows-services

我有一个Windows服务,它将一直运行,但只有在自上次至少24小时后才会激活。因此,我需要存储自上次执行有效载荷以来的时间和日期。

要做到这一点,我想写一下App.Config:

ConfigurationManager.AppSettings.Set("LastRunTime", DateTime.Now.ToString());

然而,这似乎并不存在,而是缓存,如果重新启动服务则无效。

那么为Windows服务保留值的可接受方法是什么?

2 个答案:

答案 0 :(得分:6)

使用数据库,简单的xml /文本文件,注册表值。

此外,根据您的要求,使用任务计划程序运行的简单控制台应用程序可能是另一种选择。

答案 1 :(得分:1)

我最终按照this article序列化对象,并内联@ChrisBint所说的我将其保存到文本文件中。这就是我所期待的“接受”,我知道我可以写入文本文件,但这是我正在寻找的方法。我希望保持所有结构化和强类型,而不是编写我自己的方法来保存数据。

由于@Chris只提供了部分答案,我已经对他进行了投票并接受了这一点。