1.引用 Npgsql.EntityFrameworkCore.PostgreSQL、Pomelo.EntityFrameworkCore.MySql NuGet 包至 EntityFrameworkCore 項目;
2.在 DbContextConfigurer 類中使用 builder.UseNpgsql(connectionString); 並引入 Npgsql 命名空間或 builder.UseMySql(connection); 引入 MySql.Data.MySqlClient 命名空間;
3.修改連接字符串,兩種數據庫的連接字符串其實可以通用也可以寫成下面的格式;
PostgreSQL:host=localhost;port=8100;database=databaseName;userid=postgres;pwd=password;
MySQL:server=localhost;port=8100;database=databaseName;uid=root;pwd=password;Character Set=utf8;
4.重新生成遷移代碼並更新數據庫;
就這樣 EntityFramework 就可以順利的支持 PostgreSQL、MySQL 數據庫了。
遷移與數據庫更新命令:
Add-Migration init -C HostDbContext
Update-Database init -C HostDbContext