The underlying provider failed on open 問題解決

用Entity Framework6,鏈接MS SqlServer,本地測試沒問題,同事用IP訪問就提示了 “The underlying provider failed on open”,在網上查,有人說是連接字符串寫的有問題,喵了個咪的,連接字符串寫的有問題,爲啥我用Add-Migration 和 update-database命令可以成功更新數據庫,連接字符串有問題,爲啥我IIS Express 下的localhost好用,於是繼續searching,發現了一老外寫的東西

網址貼在這裏,有興趣的童鞋可以去看看 http://th2tran.blogspot.com/2009/06/underlying-provider-failed-on-open.html

愛國?不喜歡看外文?好吧,我去下地獄。

作者大抵是說,他也遇到了這個問題,於是來回搞來回搞,最後終於發現,EF在操作數據庫時要反覆鏈接、斷開數據庫,如果連接字符串是windows 服務驗證,而不是用的用戶名和密碼,那麼嘗試訪問數據庫的用戶是NT AUTHORITY\NETWORK SERVICE,這廝權限不夠大,導致登錄失敗。至此水落石出,故事的最後,作者嘗試把那個賬戶添加到SQL Server裏,並給了權限,就一切OK了。

本人懶着搞新賬戶的問題,所以,直接改成用用戶名和密碼,再次測試,OK了。

喵了個咪,還真的是連接字符串的問題.


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章