我成功運行了通過WCF測試客戶端的測試,直到我嘗試使用實體框架提取數據。WCF&Entity Framework&SQL Server - 「基礎提供程序在打開時失敗」
爲了確保我沒有做任何愚蠢的事,我從網上下載本教程中,這是做類似的事情示例代碼:http://www.codeproject.com/KB/WCF/WCFandEF.aspx
...當我運行它,我得到了同樣的錯誤類似的地方:
var productEntity = (from p in context.ProductEntities
where p.ProductID == id
select p).FirstOrDefault();
的錯誤是
基礎提供失敗的打開。
我可以從具有相同連接字符串的「普通應用程序」打開數據庫,它似乎是特定的從WCF測試客戶端訪問數據庫。
在此處和Google上進行調查以瞭解「底層提供商在Open上失敗」。通常表示這是一個連接字符串問題,但我很確定它不是這種情況。
所以現在我期望它是某種權限問題。
我使用SQL Server和Windows 7,使用Visual Studio 2010
我一直在敲打從昨天起我的頭,所以任何幫助或保護頭盔讚賞。
編輯,包括連接字符串
<add name="NorthwindEntities"
connectionString="metadata=res://*/Northwind.csdl|res://*/Northwind.ssdl|res://*/Northwind.msl;provider=System.Data.SqlClient;provider
connection string="Data Source=localhost;Initial Catalog=Northwind;User ID=sa;MultipleActiveResultSets=True""
providerName="System.Data.EntityClient" />
你能分享你的連接字符串嗎? – flipchart
您是否啓用了「Drop Database」作爲初始化程序並同時打開MS SQL Management Studio?那會導致這樣的例外,因爲你不能在那個時候刪除數據庫,並且EF失敗。 – UrbanEsc
@flipchart - 我已經編輯了上面的內容,添加 – iKode