我正在开发一个Windows服务,我差不多完成了,
我是使用Visual Studio 2012做的。
我连接到App.config
文件以读取连接字符串,因为Windows服务处理数据库中安装的数据。
我可以在我的机器上安装此Windows服务,但我问这个服务在安装后是否仍然可以从App.config
读取?或者我必须对连接字符串进行硬编码?
我希望我能够解释我的问题。但是,如果您不理解我,请告诉我更多信息。
最好的考虑,
答案 0 :(得分:17)
是的,你将能够。编译服务时,需要部署整个/bin
目录。它将包含服务依赖项和实际代码。
编译完成后,App.config
文件将重命名为:Service.exe.config
。内容将是App.config
的副本。这是服务将使用的文件。 Service.exe
是您的可执行文件的名称。因此,如果您的可执行文件是AwesomeService.exe
,则配置文件将为AwesomeService.exe.config
。
答案 1 :(得分:1)
更简单的方法是根据特定路径读取特定的配置文件!这是一个工作样本:
System.Configuration.Configuration conf = System.Configuration.ConfigurationManager.OpenExeConfiguration("<full path including component name.exe (and not including the '.config' part");
string PropValue = conf.AppSettings.Settings["PropertName"].Value;