ODP.NET 代码在 4.121 上崩溃但在 2.121 上不崩溃 - Windows 服务 - CommandBehavior.CloseConnection
ODP.NET Code Crashing on 4.121 but not 2.121 - Windows Service - CommandBehavior.CloseConnection
我有一个 Windows 服务的问题,在尝试处理以这种方式创建的 reader 时它崩溃了:
drOra = cmdOra.ExecuteReader(CommandBehavior.CloseConnection)
处理在 Finally 块中,检查是否为 null
If Not drOra Is Nothing Then drOra.Dispose()
即使我将其放入捕获器中,windows 服务仍然崩溃。
所以,我修改为使用 USING 语句,现在该块崩溃了。
我使用 ODP.NET 版本 2.121 而不是 4.121 临时修复了它,但希望了解为什么会发生这种崩溃。我无法获得输出,因为它不会进入 catch 块。
这是非托管提供程序。
我重构了代码以正确关闭连接和适配器并删除了 CommandBehavior.CloseConnection 引用。
一旦我这样做了,一切就开始正常工作了。
我有一个 Windows 服务的问题,在尝试处理以这种方式创建的 reader 时它崩溃了:
drOra = cmdOra.ExecuteReader(CommandBehavior.CloseConnection)
处理在 Finally 块中,检查是否为 null
If Not drOra Is Nothing Then drOra.Dispose()
即使我将其放入捕获器中,windows 服务仍然崩溃。
所以,我修改为使用 USING 语句,现在该块崩溃了。
我使用 ODP.NET 版本 2.121 而不是 4.121 临时修复了它,但希望了解为什么会发生这种崩溃。我无法获得输出,因为它不会进入 catch 块。
这是非托管提供程序。
我重构了代码以正确关闭连接和适配器并删除了 CommandBehavior.CloseConnection 引用。
一旦我这样做了,一切就开始正常工作了。