提示如下:此OracleTransaction已完成;不再可用。
这种提示会出现的原因是什么呢?

解决方案 »

  1.   

    oracle设置会话数受限制了,
    比如设会话数为20,意思是可以同时有20个用户访问数据,现在如果你是第21个访问数据库,那超过了oracle设置的会话数;
    所以出现上面的提示;这样必须要有一个用户退出系统,也就是退出访问数据库,你才能访问
      

  2.   

    我也遇到与楼主同样的问题,我把事务去掉就好了,是不是事务超时了,事务超时设置我放web.config:<system.transactions>   
     <defaultSettings timeout="00:01:00"/>  
      <machineSettings maxTimeout="00:10:00"/>  
      </system.transactions>   
    </configuration>)放web.config 又报这个错:在 machine.config 文件之外使用注册为 allowDefinition='MachineOnly' 的节是错误的,我的问题帖:http://topic.csdn.net/u/20101223/21/2c077756-9690-4881-9fa6-fa1cadcb2a58.html
      

  3.   

    不是吧,这应该是因为你在前面的逻辑处理代码中已经提交了改事务,而你有可能在后面的处理中再次提交,或者回滚。结果出现了这个提示。比如你在catch中回滚了,但回滚前该事务已经被关闭了。
    我曾犯过这样的错误。