根据我的标题,我想澄清一下:在.Net Windows服务运行时更新配置文件是否明智?
如果有可能,它的含义是什么?
谢谢。
干杯, 安
答案 0 :(得分:2)
这里有其他优秀的答案,但你在问什么?您是否在询问您正在撰写的服务?或关于别人的服务。
如果它是关于你要编写的服务,那么不,在更改时没有自动重新加载.config文件。你要么必须:
如果是关于他人的服务,您需要根据上述说明询问他们的工作原理。
答案 1 :(得分:1)
这应该对正在运行的程序没有影响。在应用程序启动期间加载配置。如果您希望这些新设置生效,则需要重新启动该服务。
修改强>: 更重要的是回答您的问题:当在.NET中创建Windows服务(我使用的是Visual Studio 2010)时,默认情况下不会使用它创建应用程序配置文件。通过添加新项/应用程序配置文件(App.config),您将创建一个在服务开始时加载的文件。如下所述,无法保证在运行时不会对其进行监控(除非您是创建者并且您知道是这种情况),但这不是App.config的常见做法。
在这些标准条件下,建议在备份配置文件的工作副本后,在运行时进行更改。然后重启服务。如果你打破它,请恢复到你的工作副本。
答案 2 :(得分:0)
你可以这样做,但需要付出代价, 您是否希望您的服务轮询知道配置文件在运行时是否有任何更改? 通常,我不建议轮询配置文件中的内容更改。