You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复Oracle.EntityFrameworkCore中get_Info方法无实现的TypeLoadException错误

解决Oracle EF Core连接时的TypeLoadException错误

这个错误我之前帮不少开发者排查过,核心问题就是Oracle.EntityFrameworkCore包与Microsoft.EntityFrameworkCore主包的版本不兼容。你看到的get_Info方法未实现的报错,本质是版本不匹配导致的接口契约不一致。

为什么会出现这个问题?

Oracle的EF Core Provider对版本匹配要求非常严格:不同大版本的EF Core(比如2.x、3.x、6.x)对应着特定版本的Oracle.EntityFrameworkCore。你当前使用的Oracle.EntityFrameworkCore, Version=2.0.19.1属于2.x系列,但如果你的项目里引用的Microsoft.EntityFrameworkCore是更高版本(比如3.x及以上),就会出现这种方法找不到的兼容性问题——因为高版本的EF Core对扩展接口做了修改,而旧版本的Oracle Provider没有实现这些新接口方法。

一步一步解决

1. 检查并对齐版本

打开你的项目文件(.csproj),查看所有Microsoft.EntityFrameworkCore相关包(比如Microsoft.EntityFrameworkCore、Microsoft.EntityFrameworkCore.Design等)的版本号,确保它们和Oracle.EntityFrameworkCore属于同一大版本:

  • Oracle EF Core 2.x → 对应Microsoft EF Core 2.x(2.0~2.2)
  • Oracle EF Core 3.x → 对应Microsoft EF Core 3.x
  • Oracle EF Core 6.x+ → 对应相同大版本的Microsoft EF Core

2. 重新安装匹配的NuGet包

先卸载不兼容的包,再安装对应版本:

# 卸载现有包
Uninstall-Package Microsoft.EntityFrameworkCore
Uninstall-Package Microsoft.EntityFrameworkCore.Design
Uninstall-Package Oracle.EntityFrameworkCore

# 安装匹配的版本(以2.2为例,你可以根据需求调整)
Install-Package Microsoft.EntityFrameworkCore -Version 2.2.6
Install-Package Microsoft.EntityFrameworkCore.Design -Version 2.2.6
Install-Package Oracle.EntityFrameworkCore -Version 2.2.0

3. 验证连接字符串格式

确保你的Oracle连接字符串格式正确,标准的TCP连接字符串示例:

optionsBuilder.UseOracle(@"User Id=your-user;Password=your-pass;Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=your-oracle-host)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=your-service-name)))");

如果使用TNS别名,需要确保Oracle客户端的tnsnames.ora配置正确,但先优先解决版本问题,再排查连接字符串。

修正后的代码参考

你的实体类和DbContext代码本身没有问题,版本匹配后就能正常运行:

public class Template 
{ 
    public int Id { get; set; } 
    public string Info { get; set; } 
}

class TemplateContext : DbContext 
{
    public DbSet<Template> Templates { get; set; }

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) 
    {
        optionsBuilder.UseOracle(@"User Id=user;Password=pass;Data Source=your-valid-data-source");
    }
}

内容的提问来源于stack exchange,提问作者whoami

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 07:50:33