Nous utilisons actuellement iBatis et nHibernate sur le même site Web. Exécution d'une sauvegarde sur une page spécifique provoque l'erreur suivante d'être jeté:Mise au point de l'erreur .Net OracleClient
System.Data.OracleClient.OracleException: ORA-01453: SET TRANSACTION doit être la première déclaration de transaction
trace de la pile est affiché à la fin de cette question. Cela se produit uniquement sur cette page (au moins que nous avons vu.)
Le code est assez basique, en appelant BeginTransaction après avoir vérifié qu'il n'existe pas actuellement une transaction active. Je suis perplexe et cherche des idées: 1. Ce qui pourrait causer le problème 2. Comment déboguer/dépanner - (par exemple: est-il un moyen d'espionner les commandes envoyées à Oracle via le System.Data.OracleClient ?)
Nous vous remercions de votre aide.
System.Data.OracleClient.OracleConnection.CheckError (OciErrorHandle errorHandle, Int32 rc) 304.553 System.Data.OracleClient.OracleCommand.Execute (OciStatementHandle StatementHandle, le comportement CommandBehavior, Boolean needRowid, OciRowidDescriptor & rowidDescriptor, ArrayList & resultParameterOrdinals) 990 System.Data.OracleClient.OracleCommand.ExecuteNonQueryInternal (Boolean needRowid, OciRowidDescriptor & rowidDescriptor) 431 System.Data.OracleClient.OracleCommand.ExecuteNonQuery() 115 System.Data.OracleClient.OracleTransaction..ctor (connexion OracleConnection , IsolationLevel isolationLevel) +377 System.Data.Oracl eClient.OracleInternalConnection.BeginOracleTransaction (IsolationLevel il) 101 System.Data.OracleClient.OracleInternalConnection.BeginTransaction (IsolationLevel il) 4 System.Data.OracleClient.OracleConnection.BeginDbTransaction (IsolationLevel isolationLevel) 63 System.Data.Common. DbConnection.System.Data.IDbConnection.BeginTransaction (IsolationLevel isolationLevel) 10 NHibernate.Transaction.AdoTransaction.Begin (IsolationLevel isolationLevel) +176