如何解决当应用退出时,使用对象更新Web服务
| 我正在使用Silverlight应用程序,用户可以在其中创建,编辑,删除对象。他们所做的更改被放入队列,每4分钟处理一次。处理完成后,更新通过异步Web方法调用发送,一次保存在sql数据库中。当第一个更新完成时,下一个开始。 我在用户进行更改然后在4分钟计时器到期之前退出浏览器应用程序时遇到问题。目前,这些更改正在丢失。 我已经在我之前完成此工作的人员的基础上,探索了Dispose和Finalize方法,试图在关闭工厂时启动更新过程,但是由于Web服务调用的异步特性,该方法无法正常工作。我收到错误消息说所需的对象已经被丢弃。 我正在寻找一种方法,当用户尝试关闭或刷新网页时,使用Web方法将数据保存在更新队列中。我不希望队列中充满更新。该应用程序通常一次运行几个小时。解决方法
您可以使用Javascript停止用户离开页面。 StackOverflow会执行此操作(尝试编辑答案并离开页面)。这适用于浏览器关闭以及页面导航。通过Javascript,您还可以通知Silverlight应用程序保存所有排队的数据(Silverlight支持将方法公开给Javascript)。
问:对于Silverlight应用程序,每4分钟保存一次是有点奇怪的行为。我猜它一次只能由一个用户运行。是什么限制您更频繁地储蓄?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。