一、使用依赖包MySql.Data.EntityFrameworkCore
builder.Services.AddDbContext<WebCoreContext>(options =>
options.UseMySQL(builder.Configuration.GetConnectionString("DefaultConnection")));
存在问题:目前MySql.Data.EntityFrameworkCore(8.0.22)只支持Microsoft.EntityFrameworkCore(3.11)及以下版本,Microsoft.EntityFrameworkCore(5.0.12)(6.0.0)都不支持。
编译可以通过,但运行时会报错
Method 'Create' in type 'MySql.Data.EntityFrameworkCore.Query.Internal.MySQLSqlTranslatingExpressionVisitorFactory' from assembly 'MySql.Data.EntityFrameworkCore, Version=8.0.22.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' does not have an implementation.”
解决办法:降版本把MySql.Data.EntityFrameworkCore降到5.0
二、使用依赖包Pomelo.EntityFrameworkCore.MySql
var serverVersion = new MySqlServerVersion(new Version(x, x, xx);
builder.Services.AddDbContext<WebCoreContext>(options =>
options.UseMySql(builder.Configuration.GetConnectionString("DefaultConnection"), serverVersion));