在 .NET 中将 EF Core 升级到 9.0.5 MySQL 连接提示 get_LockReleaseBehavior

前言

今天咱们把 Microsoft.EntityFrameworkCore 升级到 9.0.5 最新版本,然后进行 MySQL 连接操作提示下面异常:

Method 'get_LockReleaseBehavior' in type 'Pomelo.EntityFrameworkCore.MySql.Migrations.Internal.MySqlHistoryRepository' from assembly 'Pomelo.EntityFrameworkCore.MySql, Version=8.0.3.0, Culture=neutral, PublicKeyToken=2cc498582444921b' does not have an implementation.

问题原因

出现以上异常的主要原因就是因为 Pomelo.EntityFrameworkCore.MySql 程序集和 Microsoft.EntityFrameworkCore 程序集版本不兼容,Pomelo.EntityFrameworkCore.MySql 8.x 版本中未实现 Microsoft.EntityFrameworkCore 9.x 中的 get_LockReleaseBehavior 方法。

发现Pomelo.EntityFrameworkCore.MySql项目仓库的 Issues 中有不少人反馈这个问题: https://github.com/PomeloFoundation/Pomelo.EntityFrameworkCore.MySql/issues/1944

并且 MySQL 官网中也有人反馈这个问题: https://bugs.mysql.com/bug.php?id=116691

解决方案

1、将 Microsoft.EntityFrameworkCore 包降级到 9.0.0 以下版本即可。

2、将 Pomelo.EntityFrameworkCore.MySql 包升级到 最新预发行版 9.0.0-preview.3.efcore.9.0.0 预发布版本(注意:9.0.0-preview 是实验性版本,可能存在未适配或未实现的方法,不建议生产环境使用)。

相关推荐
李兆龙的博客7 小时前
问津集 #26:Lakebase——Postgres 的版本化页面存储、数据库分支与计算弹性
数据库
倔强的石头_9 小时前
聊聊金仓KFS:一款把数据同步软件做扎实的产品
数据库
闲云野鹤在人间9 小时前
MySQL|从理论、安装、备份到主从复制、MHA高可用详解
linux·运维·数据库·mysql·云计算
禾小西9 小时前
Redis:从两大维度和三大主线建立知识体系
数据库·redis·缓存
禾小西10 小时前
Redis 数据结构:快速的 Redis 有哪些慢操作?
数据结构·数据库·redis
数据库小学妹10 小时前
数据共享交换平台选型:交换方式对比与避坑指南
数据库·信创·数据同步·数据交换平台·政务数据共享·数据共享交换平台·数据库底座
要开心吖ZSH11 小时前
MySQL 慢 SQL 排查操作手册-个人笔记版
java·笔记·sql·mysql·慢查询
loong_XL12 小时前
决策模型做内容安全检测:从踩坑到上线
数据库·安全·jev·决策模型
这个DBA有点耶12 小时前
数据库双轨并行实战:全量并行策略、增量延迟控制、双向回切与一致性校验
数据库·架构·dba
Gl�ria12 小时前
MySQL 单机版 vs 高可用版:宕机排查 + 故障处理
mysql·adb·架构