写入数据库似乎没有效果

Writes to database seem to have no effect

我正在使用用 C# 编写的 ASP.NET Web 应用程序部署到 IIS/Windows Server 2008 R2。该应用程序使用 NHibernate 与联网 unix 服务器上的 Oracle 数据库 运行 交互。

应用程序对数据库的写入似乎没有效果。

如果我手动编辑 Oracle 数据库中记录的值,应用程序会反映新值。但是,如果我尝试使用应用程序的自定义“保存”功能更改值,则更改不会反映在数据库中。好像读成功了,但是写失败了。

为什么写入似乎失败了?

更多信息:

没有收到明显的错误消息(即应用程序没有抛出异常,它似乎继续 运行 就好像一切都很好)。

此应用程序的另一个实例是 运行,位于 IIS/Windows Server 2003 上。此实例可以写入 Oracle 数据库(即,可以使用数据库查看器立即在数据库中看到更改单击“保存”后)。

2003/2008 申请的代码几乎相同。但是,在 2008 服务器上,我使用的是较新版本的 Oracle 库,并将 visual studio 项目的目标架构从“任何 CPU”更改为“x86”(2008 服务器是 64 位而 2003 服务器是 32 位的)。

免责声明:

我使用 IIS、NHibernate、Oracle 数据库、Windows Server 2003 和 Windows Server 2008 R2 的经验非常有限。但是,我在使用 C#、ASP.NET 网络应用程序、Visual Studio 和 MSSQL 数据库方面有更多的经验。

我解决了

原来有一个 HttpModule 没有被初始化。这是因为 web.config 文件已针对 IIS6 进行了调整,并且应用程序在 IIS7 上设置为集成管道模式的应用程序池中 运行。将应用程序池切换到经典模式实质上启用了向后兼容性。

无论如何,这是帮助我解决问题的资源: