从访问IBM Informix.Net Web应用程序



我们需要实现与IBM中名为Informix的旧数据库的集成。鉴于此,我们安装了IBM的Client SDK(版本4.10 FC4DE(,并实现了一个简单的控制台应用程序来测试数据访问方法。它与.Net ADO.NET Provider for InformixODBC64位和OleDb(由Ifxoledbc驱动(配合良好。

当我们尝试在web应用程序上运行它时(asp.net MVC与我们刚刚在控制台应用程序4.6版本上测试的.net Framework版本相同(,我们得到了以下错误:

无法加载程序集"IBM"。数据Informix或其依赖项之一。。。

如果我试图通过ODBC运行它,它会显示:

[Microsoft][ODBC驱动程序管理器]指定的DSN包含驱动程序和应用程序之间的体系结构不匹配

而且它不适用于。Net ADO。NET提供程序、ODBC或OleDb。这些在web应用程序上都不起作用,但在控制台中一切都很好。

当我在项目中添加引用时,会发生一些奇怪的事情。当我在控制台应用程序上添加引用时,在IBM.Data.Informix引用的属性窗口上,它显示dll版本是3.0.0.0,控制台上是4.0.0.0。这是相同的文件路径。

我的问题是,我如何才能正确地调查它,并了解web应用程序案例中缺少什么依赖项?

谢谢。

解决方案:当运行web应用程序时,它必须在64位上执行,因为客户端SDK是64位的。

若要确保Web应用程序在Visual Studio的64位上运行,请转到Tools/Options/Projects and Solutions/Web Projects,并选中选项Use 64 bit version of IIS EXpress for web sites and projects

最新更新