【发布时间】:2020-01-22 09:01:38
【问题描述】:
在 c# 中执行过程之前,我的 oracle 连接正在关闭。 Oracle 过程需要一个多小时才能完全执行。
请建议如何在我的程序返回值之前保持相同的连接。
【问题讨论】:
在 c# 中执行过程之前,我的 oracle 连接正在关闭。 Oracle 过程需要一个多小时才能完全执行。
请建议如何在我的程序返回值之前保持相同的连接。
【问题讨论】:
如果您可以改善存储过程的执行时间,那就更好了。 但如果这不可行,您可以设置连接生命周期,让它等待,当响应返回时,您可以关闭连接。
连接生命周期 - 连接的最长生命周期(以秒为单位)。
con.ConnectionString =
"User Id=scott;Password=tiger;Data Source=oracle;" +
"Min Pool Size=10;Connection Lifetime=120;Connection Timeout=60;" +
"Incr Pool Size=5; Decr Pool Size=2";
您可以在此处找到更多详细信息。 https://docs.oracle.com/cd/B28359_01/win.111/b28375/featConnecting.htm
【讨论】:
使用 Devart dotConnect for Oracle,请增加 OracleCommand.CommandTimeout 或“Default Command Timeout=your_value;”的值在连接字符串中。
【讨论】: