来自Machine.Config的maxTimeout值未被C#winform应用程序获取
我一直在使用Oracle 10g数据库的winform应用程序,它正在使用TransactionScope
并想修改machine.config文件中指定的maxTimeOut
值,我的machine.config文件位于以下位置(我正在使用.net 4这个应用程序)
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config
最初没有为maxTimeOut
指定任何内容,因此它默认为10分钟。 为了更改它,我添加了maxTimeout="00:00:10"
值,如下所示:
我重新启动了PC并运行了一个持续时间超过此时间的测试 – 但是事务在10秒后似乎没有中止,而是使用了TransactionScopeOption参数中指定的scopeOption.TimeOut
值(5分钟)并且事务超时5分钟后。
我是否已将maxTimeout值包含在上方的正确位置? 文件中是否有任何需要更改的内容? 为什么没有使用machine.config中maxTimeout的值?
谢谢
它没有被选中的原因是因为maxTimeOut值应该放在关闭配置标记之前的machine.config文件的末尾。 我一做到这一点就开始工作了。
尝试在32位机器配置中设置值
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config
可能是为x86编译设置了winforms。 还要检查是否存在odac事务超时设置和程序集。