1. 程式人生 > >EntityFramework 基礎提供程序在 Open 上失敗

EntityFramework 基礎提供程序在 Open 上失敗

ryu frame col chan 學習 connect string 中一 出錯

最近項目開始上線,所以抽時間學習了一下EF。雖然項目中一直在用,但是因為一些原因,一直是知其然不知其所以然,緊緊只限於會用而已。這兩天自己搭建了一個MVC的EF框架,雖然也有參考網上各種資料,但是依然不是很順路。

所以就遇上了題目的問題,在寫入數據庫的時候報錯: 基礎提供程序在 Open 上失敗 !SaveChanges 的時候出錯!

  users user = new users();
            TryUpdateModel(user);
           //將實體以基礎數據添加到集的基礎上下級
            db.users.Add(user);
           
//保存到數據庫 if (db.SaveChanges() > 0) { return JavaScript("alert(‘保存成功‘)"); }

  

大致一看肯定是鏈接數據庫的問題,但是 鏈接數據庫的配置都的自己生產的啊~網上百度了一下 ,遇到該問題的還真不少,解決方案也是大同小異。後來對號入座了一下,應該是鏈接數據庫的字符串有問題

<add name="TestDbCon" connectionString="metadata=res://*/Models.MyModel.csdl|res://*/Models.MyModel.ssdl|res://*/Models.MyModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=192.168.30.120;initial catalog=TestDb;persist security info=True;user id=sa;MultipleActiveResultSets=True;App=EntityFramework&quot;"
providerName="System.Data.EntityClient" /></connectionStrings>

這是自動生成的.config 裏的代碼,仔細看 有用戶名沒有密碼,後來加上 數據庫的 密碼就正確了!

EntityFramework 基礎提供程序在 Open 上失敗