2012-10-24 137 views
0

我有一個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

回答

0

事實證明,app.config文件只有在Windows服務安裝時才能讀取。我原本以爲如果Windows服務重新啓動,它會重新讀取app.config

如果您在試圖找出Windows服務未啓動的原因時遇到困難,請查看EventViewer,您可能在那裏有一些日誌。

如果Windows服務未啓動,但很有可能調試Windows服務非常困難。如果遇到問題,請查看this SO post

感謝@ J0HN的幫助。