У меня есть несколько транзакций для вставки данных формы в таблицу оракулов.
if (InsertQuarterly() == true)
{
InsertMeasures();
}
И если insertmeasures
процедура выполнена успешно, то я должен вызвать другую процедуру.В течение InsertQuarterly
я вызываю метод веб-службы для вставки данных в таблицу Oracle, например,
sOUT = ws_service.InsertQuarterly(txtQ2dTarget.Text, txtQ3dTarget.Text)
и для InsertMeasures
Я звоню веб-службе
sOUT = ws_service.InsertMeasures(txtachieveGold.Text, txtachieveDia.Text)
Моя проблема, если InsertQuarterly
выполнено успешно, но если InsertMeasures
не удалось во время транзакции, то я также хочу откат InsertQuarterly
.Как мне этого добиться?Я могу использовать OracleTransaction
с transaction.Rollback()
.Но я использую различные методы веб-сервиса для транзакций.Как управлять откатом и совершать транзакции здесь .?
Какова лучшая процедура для обработки транзакций?