-
在EntityFramewor和Web工程中通过nuget添加mysql.data.entity引用, 默认最新的是6.10。4
-
在web工程的web.config文件中更改连接字符串为mysql, 如下:
<connectionStrings>
<add name="Default" connectionString="Server=localhost;port=3306;Database=AbpDemo;uid=root;password=111111" providerName="MySql.Data.MySqlClient" />
</connectionStrings>
-
在EntityFramework工程里的Configuration类中添加mysql的迁移支持:
SetSqlGenerator("MySql.Data.MySqlClient", new MySql.Data.Entity.MySqlMigrationSqlGenerator());
-
在Package Manager Console执行update-database命令,
报错
解决办法是: 用nuget把entityFramework和web工程中的mysql.data.entity降级为6.9.10.
-
重新在Package Manager Console运行update-database,
报错
解决办法是: 在EntityFramework工程里的xxxDbContext类头添加[DbConfigurationType(typeof(MySqlEFConfiguration))]属性。
例如:
-
重新在Package Manager Console中运行update-database, 成功。
参考:https://aspnetboilerplate.com/Pages/Documents/EF-MySql-Integration