从.NET核心调用AS400 dB



我有一个.net core webapi,并且我安装了ibm.data.db2.core软件包。当我尝试使用连接字符串调用DB2 Connection构造函数时,我会收到以下错误。

无法加载dll'db2app64.dll':找不到指定的模块。

这应该包含在db2.core软件包中吗?是否有更好的方法可以从.NET核心调用AS400 dB?

我的代码看起来像这样:

DB2Connection conn = new DB2Connection("Server=as400.example.com;Database=CLIENTS01;UID=user1;PWD=password1;");

如果您使用的是.NET核心软件包,则必须在路径变量中包括驱动程序的路径(Nuget软件包中包含在Nuget软件包中(。

这是开发人员的Nuget软件包上常见问题解答的相关部分:

问:我需要做任何其他配置 配置。

 Yes,  On Windows :
   if C:Users<USERNAME> is the NuGet package folder then
   add to the path:  C:Users<USERNAME>.nugetpackagesIBM.Data.DB2.Core1.0.0.100buildclidriverbin
 and On Linux:
    append $HOME/.nuget/packages/IBM.Data.DB2.Core-lnx/1.0.0.100/build/clidriver/lib
    to the LD_LIBRARY_PATH.

我找到了设置最简单的方法是在项目设置中设置路径变量。查看此博客文章,涉及您可以做到的一些不同的方法。

实际上,其他开发人员作品页面说:

下载和使用软件包的说明

以下是使用软件包

的先决条件
  • 机器中不应存在任何其他IBM DB驱动程序。

  • 路径/ld_library_path需要更新以包括包装驱动程序路径。

您需要安装IBM数据服务器驱动程序包,您可以在那里

http://www-01.ibm.com/support/docview.wss?uid=swg24038920

它包括您缺少的依赖项

最新更新