天天看點

EF6使用Mysql資料源

網上有很多類似的ef6使用mysql資料源的教程,但有很多版本沒有注名,更多的由于mysql版本的更新導緻按某一些教程一路走下來最後卻會報錯,是以自己整理了一份,友善自己以後查閱。

以下軟體均會注明版本,安裝過程就不發了,自己查或者預設

mysql環境安裝

名稱 版本 說明
MySQL 資料庫 8.0.12 當時mysql最新版本是8.0.17應該也是可以的,不過開發環境上安裝的是12就懶得改了
MySQL Connector/ODBC 8.0
MySQL Connector/NET 6.10.9
MySQL for Visual Studio 1.2.8

注意,在安裝完成mysql connector過程中若開着vs,在安裝完成後記得重新開機

VS

名稱 版本 說明
Visiul Studio 2019 16.3 這裡有個要注意的就是vs2019安裝的時候要選擇.net 桌面開發,必須要安裝Enetiy Fremework 6SDK才可以使用ADO.net 資料模型,參考最下方圖1

VS NuGet程式包

名稱 版本 說明
EntityFramework 6.2.0
Mysql.Data 6.10.9
MySql.Data.Entity 6.10.9 現在有最新的程式包是MySql.Data.EntityFramework 8.0.17 但是不知道是什麼原因在建立資料模型會報錯,最後還是選擇了舊版本的MySql.Data.Entity,在這裡踩坑的同學可以留意一下

程式包完成後需要重新生成解決方案

設定mysql資料源

一切準備就續以後,就可以在vs設定mysql資料源了

  • vs點選視圖-伺服器資料總管
  • 在資料連接配接右鍵-添加連接配接,如果以上軟體版本沒有錯誤的話,是可以在資料源看到mysql的資料源的。網上很多過時的解決隻提到mysql conntent版本不對,在此個人的了解是MySQL Connector/NET的版本不能高于Mysql.Data的版本,否則可能就看不到mysql資料源。當然可能還有其他原因,比如沒有重新開機vs或者其他,不再贅述
    EF6使用Mysql資料源
  • 點選确定後就是填寫mysql的連接配接資訊,懂的自然都會寫,不懂也沒必要在這裡看教程了

EF6使用Mysql資料源

在接下來就可以寫個控制台demo測試了

  • 自備一個mysql資料庫
  • vs内點檔案-建立-項目-選擇控制台應用,記得在這個控制台内安裝NuGet控制包
  • 接下來右鍵該控制台項目-添加-建立項
    EF6使用Mysql資料源
  • 選擇ADO .NET實體資料模型
    EF6使用Mysql資料源
  • 我選擇的模式是code first,因為資料庫已經有了,其他方案自行解決
  • EF6使用Mysql資料源
  • 點選下一步,在紅框内選擇剛添加的mysql資料源
    EF6使用Mysql資料源
  • 以上的步驟沒出錯的話,就會出現以下的畫面
    EF6使用Mysql資料源
  • 到了這一步,這篇文章的目的就已經達成了,如果出現報錯的話請仔細按步驟操作,所有的操作都是我一步步嚴謹測試的結果,每一步都是血淚史
    EF6使用Mysql資料源

圖1

EF6使用Mysql資料源

繼續閱讀