Реализация транзакции отката в WP7 - PullRequest
2 голосов
/ 27 декабря 2011

Как я могу реализовать транзакцию отката в wp7.В настоящее время моя проблема заключается в том, что после вставки или удаления я звоню отправляет изменения, в то время, если я сделал надгробную плиту, приложение закрывается.как я могу справиться с этой ситуацией, я планирую использовать try catch, и если обнаруженное исключение означает, что мне нужно откатить изменения.Пожалуйста, кто-нибудь, помогите мне реализовать то же самое в wp7.

1 Ответ

1 голос
/ 28 декабря 2011

Зачем вам откат, когда приложение становится захороненным?Технически ваше приложение не знает, когда оно захоронено, вы знаете только о том, когда оно деактивируется.См. Следующую диаграмму жизненного цикла:

enter image description here

(изображение выше взято из сообщения в блоге http://www.scottlogic.co.uk/blog/colin/2011/10/a-windows-phone-7-1-mango-mvvm-tombstoning-example/, в котором подробно описывается жизненный цикл)

Всякий раз, когдаВаше приложение деактивировано, вы можете обработать событие Деактивировано.Начиная с MSDN :

Приложениям дается 10 секунд на завершение обработчика Деактивированный

Это дает вам возможность очистить, сохранить состояние и выполнить другие действия.действия до того, как ваше приложение деактивируется.

Я предполагаю, что вы совершаете транзакцию, когда состояние вашего приложения изменяется?Работает ли фиксация в потоке пользовательского интерфейса?то есть это блокирует?Если это так, вам не нужно больше ничего делать (кроме того, чтобы убедиться, что это не займет более 10 секунд).Если ваша фиксация выполняется в фоновом потоке, вы должны будете убедиться, что ваш деактивированный обработчик событий блокируется, пока фиксация не будет завершена.

...