2013-04-13 61 views
0

我有一個Windows服務,它使用實體框架與ODAC結合使用。該服務只是輪詢數據庫中的表格以檢查是否準備處理記錄。Windows服務無法找到數據提供程序

該服務按照預期在我的開發PC上運行,但在部署到服務器時無法運行。 服務器安裝了相同的ODAC組件,並且執行相同代碼的控制檯應用程序在開發PC和服務器上都能正常工作。

我從服務器爲Windows服務收到錯誤信息如下:

System.ArgumentException: The specified store provider cannot be found in the configuration, or is not valid. ---> System.ArgumentException: Unable to find the requested .Net Framework Data Provider. It may not be installed. at System.Data.EntityClient.EntityConnection.GetFactory(String providerString)

谷歌搜索此錯誤消息指出,有沒有安裝/配置的東西妥善關於數據提供者,但然後控制檯應用程序工作正常,所以我不相信這是問題的原因。

歡迎任何想法,如果需要更多信息,請詢問。

+0

你好,唯一我能想到的是導致一些「查找」問題的應用程序的運行目錄。 請參閱http://stackoverflow.com/questions/884963/what-directory-does-a-windows-service-run-in 您是否指您的應用程序中的任何相對路徑? – wacdany

+0

感謝您的建議,但運行相同代碼的控制檯應用程序正在與服務相同的目錄中執行,並且工作正常。我懷疑我的問題是由權限問題引起的,但無論我使用哪種憑據,我都遇到同樣的問題。 – philreed

回答

0

看來,這與我使用的ODP.NET版本有關。 32位& 64位版本沒有正確安裝,現在一切似乎正常工作,現在我已經重新安裝。

相關問題