|
|
|
Transaction для нескольких SqlDataAdapter
|
|||
|---|---|---|---|
|
#18+
Проблема в следующем: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. Ситуация такая... допустим ошибка произошла при обновлении второй таблицы по счету GS.DAExpert. В этом случае txn.Rollback() удачно отработает, и обновления откатятся на сервере. НО (!!!) в GS.DTProject добавленные строки останутся, потому что когда отправляли изменения на сервер внутри транзакции они отправились без ошибки и строки пометились как RowState.Original и GS.DTProject.RejectChanges() не работает... :( Как быть в этой ситуации?? Как откатить изменения еще и в тэйбле, при таком вот обновлении?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2009, 12:26 |
|
||
|
Transaction для нескольких SqlDataAdapter
|
|||
|---|---|---|---|
|
#18+
Завернуть в одну хранимку, и там же в одну транцакцию, чем не выход ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 00:49 |
|
||
|
Transaction для нескольких SqlDataAdapter
|
|||
|---|---|---|---|
|
#18+
Делай так. Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 07:22 |
|
||
|
Transaction для нескольких SqlDataAdapter
|
|||
|---|---|---|---|
|
#18+
Спасибо :) Все замечательно работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 14:02 |
|
||
|
Transaction для нескольких SqlDataAdapter
|
|||
|---|---|---|---|
|
#18+
SuzerenСпасибо :) Все замечательно работает. Это работать не может так как при откате Add записи записи станут Modified! В MSDN это все описано читай про AcceptChangesDuringUpdate Примечание. Задание для свойства AcceptChangesDuringUpdate значения false применяется ко всем изменениям данных, а не только к их вставкам. Если требуется изменить или удалить строки в одном и том же обновлении, предотвратив при этом вызов AcceptChanges только для вставок, то вместо задания для AccceptChangesDuringUpdate значения false, следует использовать обработчик событий для события RowUpdated объекта DataAdapter. В обработчике событий можно проверить свойство StatementType, чтобы определить, является ли изменение данных вставкой, и если это верно (true), установить для свойства Status объекта RowUpdatedEventArgs значение SkipCurrentRow. Дополнительные сведения и примеры см. в разделе Извлечение значений идентификаторов или автонумерации (ADO.NET). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2009, 14:21 |
|
||
|
Transaction для нескольких SqlDataAdapter
|
|||
|---|---|---|---|
|
#18+
OldWoker Это работать не может так как при откате Add записи записи станут Modified! В MSDN это все описано читай про AcceptChangesDuringUpdate Спасибо за замечание. Но мне принципиально именно откатить данные. То, какой вид они имеют потом - мне не важно. Т.е modified они или нет - меня совершенно не тревожит. Таков алгоритм. Но все равно, спасибо, ценное замечание. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2009, 07:28 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=35930752&tid=1351853]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
65ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 195ms |
| total: | 314ms |

| 0 / 0 |
