使用EntityFramework6連線MySql資料庫(db first方式)
阿新 • • 發佈:2018-12-27
準備工具:
程式包管理器執行命令:
Install-Package EntityFramework Install-Package MySql.Data.Entity.EF6Install-Package MySql.Data.Entity -Version 6.9.3
這塊已經可以直接Install-Package MySql.Data.Entity -Version 6.9.3
用這個了
此時如果直接新增ado.net實體模型的話是有以下錯誤的:
注意了:App.config中生成的Provider是有問題的,這時候要手動新增紅色線畫出的一條:
注意了:下面的這塊截圖也可以不用了,因為你使用Install-Package MySql.Data.Entity -Version 6.9.3
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
這樣最好先編譯一下。
然後開始新增ADO.NET實體模型了
然後就是和以前的一樣了。
被這個問題折磨了很久,記錄下來備忘。希望能幫得到跟我一樣的你!
2017-06-14 vs2017 mysql5.7.18 ef6.1.3 mysql.data.entity6.9.9
最新版vs2017連線mysql5.7時出現了這樣的一個問題:
解決方法如下:
1、重啟mysqld(一般為mysql57)服務
2、use mydb; (mydb是你要dbfirst的資料庫)set global optimizer_switch='derived_merge=OFF';
3、重新新增edmx模型並更新資料