Я работаю над приложением silverlight, где пользователь может создавать, редактировать, удалять объекты. Изменения, которые они вносят, помещаются в очередь, которая обрабатывается каждые 4 минуты. Когда он обрабатывается, обновления отправляются через асинхронный вызов веб-метода для сохранения в базе данных sql, по одному за раз. Когда первое обновление заканчивается, начинается следующее.
У меня проблема, когда пользователь вносит изменения и затем выходит из приложения браузера до истечения 4-минутного таймера. В настоящее время изменения теряются.
Я основывался на том, что сделал парень, работавший над этим, до меня, и исследовал методы Dispose и Finalize, пытаясь запустить процесс обновления, когда фабрика закрыта, но это не работает из-за асинхронной природы веб-сервис звонков. Я получаю сообщения о том, что необходимые объекты уже удалены.
Я ищу способ сохранить данные в очереди обновлений с помощью веб-метода, когда пользователь пытается закрыть или обновить веб-страницу. Я не ожидаю, что очередь будет заполнена обновлениями. Это приложение, которое обычно запускается в течение нескольких часов одновременно.