Windows服务托管WCF库:app.config connectionStrings

问题描述:

我有一个WCF库,我试图托管它在一个Windows服务。Windows服务托管WCF库:app.config connectionStrings

只用WCF Test Client测试库时一切正常。在我的库项目中,我有一个在<configuration>元素中有<connectionStrings>的app.config。我指定一个本地数据库的位置,像这样:

data source=C:\test\smMonitorLocalDB.sdf; 

我在我的Windows服务项目除<connectionStrings>部分在我的图书馆项目复制一切从在app.config到的app.config。因为,如果我添加<connectionStrings>部分,我的Windows服务将无法启动。

如果我忽略<connectionStrings>部分,我的Windows服务启动就好了。它也可以正常工作(除了依赖于<connectionStrings>的部分)。

所以我的问题是:我应该在哪里添加我的<connectionStrings>?还是有更好的办法让我这样做?

+0

你能调试,看看它为什么不能启动? –

+0

错误发生在Service的OnStart()或之前,所以我看不到发生了什么。 – davehale23

+0

错误信息中的任何数据?日志记录(考虑使用EventViewer)? – J0HN

事实证明,app.config文件只有在Windows服务安装时才能读取。我原本以为如果Windows服务重新启动,它会重新读取app.config

如果您在试图找出Windows服务未启动的原因时遇到困难,请查看EventViewer,您可能在那里有一些日志。

如果Windows服务未启动,但很有可能调试Windows服务非常困难。如果遇到问题,请查看this SO post

感谢@ J0HN的帮助。