我最初使用 IBM.Data.Informix.Dll (2.81) 的原始版本为工作中的 ASP.NET 应用程序开发了一个 ASP.NET 2.0 替代品。替换大部分工作正常,但连接到数据库时间歇性挂起(这是原来的问题。)我决定升级到最新版本的 dll(3.70),但删除旧版本并替换使用新的,然后添加引用,现在每当我构建应用程序时都会收到“未设置对象引用”错误。
该错误未指定行或提供任何有用的信息。如果我在构建之前打开其中一个 .aspx 页面,我也会收到关于文件本身的警告。
这是整个错误:
: Build (web): Object reference not set to an instance of an object.
和警告,特别是一页:
Warning 2 \\io\wwwroot\intranet\cwsheet-test2\Selection.aspx: ASP.NET runtime error: Object reference not set to an instance of an object. \\io\wwwroot\intranet\cwsheet-test2\Selection.aspx 1 1 cwsheet-test2
此外,当 aspx 文件打开时,它在顶部带有下划线:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Selection.aspx.cs" Inherits="XXX.Selection" %>
同样,这仅适用于较新版本的 dll。dll 是我系统的正确版本(取自 64 位 SDK)。如果我删除这个 dll 然后用旧的替换它,它会再次开始正常工作。
只是为了解决我不使用 IBM.Data.Db2 的原因:我们拥有的 Informix 服务器是 10.0,而 DB2 仅适用于 11.10 及更高版本。
关于 Satyan 的问题:网站中的 GAC 参考设置为 3.0.0.2;我去添加引用时DLL的版本号是3.00.05000.2。如果这可能是问题所在,我该如何纠正?