Я в шоке - данные нельзя сохранять в транзакции!
От: Аноним  
Дата: 12.11.05 14:46
Оценка:
Привет всем! Тема типизированный датасет и транзакция несовместимы друг с другом и вот почему. Пусть есть одна таблица, в котрой мы модифицируем 1,2 и 3 строку. далее пишем код сохранения
SqlTransaction tran = DbConnection.BeginTransaction();
try
{
// Включеам команды адаптера в транзакцию
mdm_ColorTableAdapter.Settransaction(tran);
this.mdm_ColorTableAdapter.Update(tableColor);
tran.Commit();
}
catch (Exception err)
{
tran.Rollback();
MessageBox.Show(err.Message);
}

Теперь, внимание! Если в третей строке сервер даст ошибку (нам сейчас не важно почему) и произойдёт откат транзакции, то у первых двух строк Adapter выставит DataRowState.Unchanged!!! И всё!!! Хоть убейся значения 1 и 2 строки уже не передадутся никогда!!! Если, теперь исправив значения в 3 строке на правильно, запустить сохранение, то получим: 3 передалось, а 1 и 2 нет!!! Так как же нам быть?
С уважением, Михаил






данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.