ciao, il mio problema è che le transazioni non funzionano utilizzando il provider oledb per le connessioni ai file su as/400.
Ho provato a settare tutti i tipi di IsolationLevel enumerati nella classe System.Data.IsolationLevel per il metodo BeginTransaction() di OleDbTransaction, ma niente.. il rollback non ne vuole proprio sapere di funzionare e mi scrive sui file (tabelle).
Credo di scrivere correttamente il codice.. vi faccio vedere come faccio:
codice:
......
try{
OleDbTransaction transaction = null;
cmd.CommandText = "INSERT INTO LIB.FILE (CAMPO1,CAMPO2) VALUES('ABC','DEF')";
cn.Open();
cmd.Connection = cn;
trasaction = cn.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted);
cmd.Transaction = trasaction;
cmd.ExequteNonQuery();
//qui faccio partire una eccezione
transaction.Commit();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message.ToString());
transaction.RollBack();
}
.......
Nessun errore.. ma quando và in eccezione il record viene scritto ugualmente..
Qualche esperienza in merito?
Ciao