C# Windows服务配置文件

6
我可以帮您进行翻译。以下是需要翻译的内容:

我创建了一个C# .net Windows服务,并且有一个配置文件。

我正在使用代码从配置文件中读取设置:

string setting1 = Properties.Settings.Default.setting1;

如果出于某种原因直接在Windows Service的.config文件中更改setting1的值,则它将保持我在项目的设置对话框中设置的值。我不明白我做错了什么...谢谢。

你能否发布一下你是如何启动服务的,以及你修改了哪些文件和在哪些目录中进行的? - Sam Holder
2个回答

1

你将设置放在了用户范围,而不是应用程序范围。

用户范围的设置位于用户AppData文件夹中。您可以在以Windows服务运行的凭据下的用户的AppData文件夹中删除它。


在设置对话框中,所有设置的范围都设置为应用程序。 - G-Man

0

你重启了服务吗?我觉得默认情况下他们不支持动态重新加载。

这个问题可能有所帮助 或者也许是这个

但总的想法似乎是通过以下方式重新加载设置:

Properties.Settings.Default.Reload();

鉴于这是一个服务,您可能希望添加一个FileSystemWatcher来监视文件,并在更改时调用重新加载。


好的,我在启动服务之前确实在配置文件中设置了所有设置 - 但它似乎会忽略我所放置的任何内容.. - G-Man

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接