官方资料 EF MySql Integration
实验发现,还差了两步
整理一下,步骤如下:
1.引用MySql.Data.Entity
2.在Configuration.cs文件(Migrations文件夹下)的构造函数添加下段代码
SetSqlGenerator("MySql.Data.MySqlClient", new MySql.Data.Entity.MySqlMigrationSqlGenerator());
3.修改数据库连接字符串
<add name="Default" connectionString="server=localhost;port=3306;database=sampledb;uid=root;password=***" providerName="MySql.Data.MySqlClient"/>
4.在dbcontext上加上特性
[DbConfigurationType(typeof(MySqlEFConfiguration))]
5.修改Web.config文件
providers在安装MySql.Data.Entity后会自行添加,有一个mysql的,有一个sql server的,把sql server的去掉
然后手动修改defaultConnectionFactory
<entityFramework>
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.10.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
</providers>
</entityFramework>
6.删去原来的所有迁移文件
7.执行迁移指令
Add-Migration "AbpZero_Initial"
Update-Database
迁移过程中,遇到问题搜索mysql报错的相关资料
over