.NET Core 6项目使用EntityFrameworkCore.Jet连接Access数据库报错
问题与解决方案
问题场景
在.NET Core 6应用中使用EntityFrameworkCore.Jet连接Microsoft Access数据库时触发错误,错误信息:
引用程序集EntityFrameworkCore.Jet, Version=3.1.1.0, Culture=neutral, PublicKeyToken=adb9793829ddae60中的类型'EntityFrameworkCore.Jet.Update.Internal.JetUpdateSqlGenerator'的方法'AppendIdentityWhereCondition'未实现。
解决步骤
- 版本不匹配是根本原因:EntityFrameworkCore.Jet 3.1.1.0仅适配EF Core 3.1,而.NET Core 6依赖EF Core 6,两者API存在差异,导致目标方法未实现。
- 升级兼容版本的EntityFrameworkCore.Jet:在NuGet中查找支持.NET Core 6的EntityFrameworkCore.Jet版本(通常为6.x系列),替换现有旧版本包。
- 验证包兼容性:安装前查看NuGet包详情页的版本说明,确认其明确支持.NET Core 6或EF Core 6。
- 替代方案(无兼容版本时):改用ODBC驱动连接Access,或考虑迁移至更适配EF Core的数据库(如SQL Server、SQLite等)。
内容的提问来源于stack exchange,提问作者Mohamed_R
相关产品推荐
相关产品推荐

