【问题标题】:Oracle Managed Data Access DLL upgrading to latest version causes compile errorsOracle Managed Data Access DLL 升级到最新版本导致编译错误
【发布时间】:2023-01-13 00:45:48
【问题描述】:

当我将 Oracle.ManagedDatabaseAccess.dll 从 v. 4.122.18.3 升级到 v. 4.122.21.1 时,有几个编译错误,具体而言:

error CS0246: The type or namespace name 'Oracle' could not be found (are you missing a using directive or an assembly reference?)

已添加参考。我最初使用了特定于版本的文件夹,并认为这可能会导致某种问题,所以我将其移至已成功引用旧 DLL 的完全相同的文件夹,但问题仍然存在。

这有点像 Similar Oracle problem,除了链接的帖子似乎是关于 Oracle.DataAccess.DLL 而这是托管版本,Oracle.ManagedDataAccess.dll

我也尝试过清理和“全部重建”以及卸载解决方案中有问题的项目并重新加载它,但都没有帮助。

据我所知,两个 DLL 都是 32 位的。

我使用的是 Visual Studio 2019、C#、asp.net 上下文,并且由于其他 Oracle.ManagedDataAccess.dll 在没有特殊使用“注册 DLL”过程的情况下工作,我不确定这是否需要或是否有帮助。

这种情况有什么帮助吗?

【问题讨论】:

  • ODP.NET 托管驱动程序独立于 32/64 位,这不是问题所在。请注意,安装在 GAC 中的程序集始终优先于复制到应用程序文件夹的文件。使用gacutil /l | findstr Oracle | sort 检查您的 GAC,可能缺少策略文件。政策文件直接到安装版本

标签: c# oracle dll visual-studio-2019


【解决方案1】:

原来我需要使用 .net 版本 4.6.2。这是在我的机器上本地构建的,一切正常。我们还没有为此做好准备,所以我恢复到以前的 DLL,但谢谢。此外,在更改 .net 版本时,有时必须加载/卸载项目,重新启动 Visual Studio,并确保项目文件的保存实际上是“take”。

也许有一天这个问题和答案会帮助其他人。

【讨论】:

    猜你喜欢
    • 2020-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-21
    • 2019-02-06
    • 2021-11-26
    • 2020-11-26
    • 1970-01-01
    相关资源
    最近更新 更多