.NET中使用EF6與連線MYSQL
阿新 • • 發佈:2018-11-10
ADO.NET Entity Framework 是微軟以 ADO.NET 為基礎所發展出來的物件關係對應 (O/R Mapping) 解決方案,不僅支援SQL Server,還支援MySQL、Oracle等資料庫。
首先安裝MySql:
然後要想VS能夠連線MySql需要安裝:
MySQL-Connector-net-6.9.9 下載
MySQL for Visual Studio 下載
之後使用Nuget安裝EF6(使用NeGut能夠自動配置Config檔案)
目前為了能適配.net 4.5我使用的是6.9.12版本的MySql,裝了更高版本的導致不能安裝成功。安裝好之後重新上生成解決方案。
之後新建一個DbContext用以連線MySql:
輸入需要連線的資料庫即可:
這裡對應資料庫的表,名字需要統一:
對應資料庫中的表:
進行測試連線成功。
如果儲存中文亂碼的時候,在EF的配置檔案中設定連線字串,然後MySql設定編碼格式為UTF8.
<connectionStrings> <add name="DBModel" connectionString="server=localhost;user id=root;password=123456;persistsecurityinfo=True;database=chkdb;Character Set=utf8;View Code" providerName="MySql.Data.MySqlClient" /> </connectionStrings>
坑點:
在DbContext設定實體的時候,如果模型為test,則資料庫中表必須為tests,而在DbContext中的DbSet名稱無要求。