在 .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 是实验性版本,可能存在未适配或未实现的方法,不建议生产环境使用)。

相关推荐
l1t1 天前
DeepSeek总结的SQL 数独:约束编程
数据库·sql
菩提祖师_1 天前
基于单片机指纹密码门禁的设计与实现
数据库·单片机·嵌入式硬件
在风中的意志1 天前
[数据库SQL] [leetcode-175] 175. 组合两个表
数据库·sql·leetcode
dingchengyu1 天前
Oracle 数据库中递归查询
数据库·oracle
在风中的意志1 天前
[数据库SQL] [leetcode-183] 183. 从不订购的客户
数据库·sql
档案宝档案管理1 天前
一键对接OA/ERP/企业微信|档案宝实现业务与档案一体化管理
大数据·数据库·人工智能·档案·档案管理
毕设十刻1 天前
基于Vue的养老服务平台85123(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
liulanba1 天前
AI Agent技术完整指南 第二部分:开发框架
网络·数据库·oracle
flysh051 天前
C#和.NET简介
开发语言·c#·.net
X.Ming 同学1 天前
深度解析 Qt 自定义图表视图:频谱图 的设计与高级功能拓展
服务器·网络·数据库