找回密码
 立即注册
首页 业界区 安全 在 .NET 中将 EF Core 升级到 9.0.5 MySQL 连接提示 get ...

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

王妍芳 5 天前
前言

今天咱们把 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.
1.png

问题原因

出现以上异常的主要原因就是因为 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
2.png

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

解决方案

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


来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册