1

我有這個ASP.NET應用程序,其中我使用實體框架連接到數據庫。在這個應用程序內我有一個類,它提供了對數據庫的不同操作(添加,刪除等)。一切都很正常。現在我需要創建一個Windows服務,每週一次使用從存儲庫收集的信息更新數據庫。我以爲我可以添加我的ASP.NET dll作爲對我的Windows服務的引用,以便我可以使用我在那裏定義的操作。但我得到以下錯誤:從Windows服務訪問數據庫

指定命名的連接或者未在配置中發現的,不打算與EntityClient提供者,或者無效

我在其他線程讀取使用的是我應該將連接字符串複製到app.config,但我的Windows服務項目中沒有任何app.config文件。我如何在ASP應用程序和Windows服務中使用我在類中定義的EDM操作?

+1

我不會爲每週只需要一次的任務創建Windows服務 - 服務用於全天候運行。只需創建一個控制檯應用程序並安排每週任務。至於連接:只需在您的控制檯應用程序中添加一個「App.config」,其中包含與您的Web應用程序相同的連接字符串(請參閱bhuvin的答案)。 – Filburt 2012-07-11 09:52:43

回答

2

在這種情況下,你需要創建一個app.configCopy the connection string in the web app to the app.config with the same name.查看Windows服務何時運行,並且EF試圖創建數據上下文,但它找不到任何內容,因此顯示錯誤。所以你應該添加一個app.config文件,並適當添加connectionstring