gpt4 book ai didi

c# - 如何取消 RIA 服务 LoadOperation

转载 作者:行者123 更新时间:2023-11-30 12:49:48 24 4
gpt4 key购买 nike

我在 Silverlight 项目中使用 RIA 服务。我在客户端使用 LoadOperation 类从服务器加载一些数据。

在加载该数据的过程中,该请求可能会被针对不同数据的更新请求所取代。这是基于对服务器进行的多个 LoadOperations,然后用户单击取消按钮。

如果我获取我的 LoadOperation 并对其调用“Cancel”方法,该操作似乎取消了,但服务器端代码并​​未停止,并且使用 fiddler 我可以看到该操作已完成并且 HTTP 状态代码为 200被退回。

当您调用“取消”时,它在服务器上做了什么,我希望它调用 ThreadAbortException 或类似的东西?这可以改进吗?

最佳答案

所以我查看了反编译的 RIA 服务源,似乎取消只是客户端。未对服务器端进程进行任何更改。

基本上,当您运行 operation.Cancel() 时,它会确保可以取消操作 (operation.CanCancel),然后将其标记为已取消,并触发完成 Action 。

这意味着服务器端操作仍在继续,但响应客户端在完成时没有做任何事情

操作完成后,您需要检查 operation.IsCanceled 属性以查看该操作是否已取消。如果是这样,请忽略结果。

关于c# - 如何取消 RIA 服务 LoadOperation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10677776/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com