0

我已经安装了 ODP.NET,并且正在通过 Oracle 为 ASP.NET 网站使用会话状态服务。我测试了它,我想,非常彻底,没有发现任何重大问题。一些用户在使用系统时一直抱怨异常错误。我添加了一些额外的日志记录,并找出了如何重现该问题。当用户双击超链接时会发生这种情况。我以前从未想过双击超链接,也不知道用户喜欢这样做,所以我没有测试过这种可能性。这会发送 2 个相同的请求以保存具有相同主键的会话项。我将 ODP.NET 11.1.0 用于 .NET 2.0 框架,并且被调用的函数已被 Oracle 混淆,所以我无法在那里修复它。有没有其他人有这个问题?除了告诉用户您不要双击超链接之外,有谁知道解决方案。

4

1 回答 1

0

首先,这听起来像是 Oracle 应该解决的问题。他们的代码应该检查并阻止它。

您可能必须检查您的超链接处理程序以防止重复提交。您可以使用实用程序类作为 Oracle 会话提供程序的包装器,并使用一些lock语句来防止重复提交。但是,我会小心-您可能会引入性能问题。

于 2009-06-02T17:32:51.980 回答