MYSQL +EF如何配置完美使用DbContext
最近感觉MS SQL过于庞大所以想换下MYSQL安装方便,使用起来资料也丰富。
一直以来VS提供的EF技术,都是能比较简单方便的搭建EF+MSSQL环境进行开发。鉴于在配置EF+MYSQL时候遇到了许多问题,虽然经过网上查找但是,仍是磕磕碰碰。所以特意记录下来。
下面就直接上示例:1、在NuGet包管理中,下载安装Mysql.Data.Entity
安装后引用中就会有一下四个dll
以上这些很多文章都能找到,所以就不多说了。
下面就是正式的web.config配置了:
1、将web.config里面自动创建的节点信息<entityFramework>替换成下面这一段
<entityFramework codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6">
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework"/>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6"></provider>
</providers>
</entityFramework>
其他的数据库连接就是正常的连接:
<add name="testDbContext" connectionString="server=127.0.0.1;port=3306;Database=mshop;User ID=root;Password=123456" providerName="MySql.Data.MySqlClient"/>
2、接着在DbContext使用就很简单了
这样就可以像直接使用edmx的模式使用数据库对象了。