【发布时间】:2018-03-30 15:35:29
【问题描述】:
我需要从 .NET 连接到 IBM AS400 数据库。这里已经有一个问题了:
http://stackoverflow.com/questions/3336646/connect-to-as400-using-net
但是,这个问题已经过时了,只是短暂地提到了 IBM i Access 客户端解决方案。我确实安装了 IBM i Access Client Solutions。我在他们的网站上找不到 IBM i Access for Windows 的下载。我正在为 IBM.Data.DB2 和 IBM.Data.DB2.iSeries 使用 nuget 包,并且代码在我安装了 IBM i Access for Windows 的另一个盒子上运行良好。
当我尝试在此框上创建连接时:
var connection = new iDB2Connection(connectionString);
我遇到了一个错误:
无法加载 DLL 'cwbdc.dll':指定的模块不能 成立。 (HRESULT 异常:0x8007007E)
那么,我的问题是:当我安装了 IBM i Access Client Solutions 而不是(现在已根据 IBM 弃用的)IBM i Access for Windows 时,我需要做什么来连接?
后记:我安装了一堆 IBM 垃圾,希望能找到一些有用的东西。对于使用 IBM.Data.DB2.iSeries 的 .NET 开发,似乎不需要安装 IBM i Access Client Solutions Base Package、IBM 数据服务器驱动程序包或 IBM Database Add-Ins for Visual Studio。我最终找到了已弃用的 IBM i Access for Windows。这让我开始行动。我希望仍然能够找到有凭据的人来下载更新的 IBM i Access Client Solutions - Windows Application Package,这样我就可以试一试了。 另外,尝试为 .NET 收集 IBM AS/400 驱动程序比我预期的 2018 年要痛苦得多...
【问题讨论】:
-
我需要更多信息,因为您安装的提供程序会有所不同。例如,5.4 仅与 .Net 1.0/1.1 兼容。您是否也尝试使用实体框架?如果您能获得更多信息,我很乐意提供帮助。
-
iSeries Access for Windows 软件没有公共下载站点。您需要联系您的系统操作团队以获取 iSeries Access 安装 CD,或者如果不在 IBM i 服务器上进行安装。这应该为您提供所需的 .NET 连接器。
-
你编译成 x86 还是 AnyCPU?
-
@Jereme 我想说的查尔斯回答了。
标签: c# .net ibm-midrange