使用 WCF Duplex 回调更新 JQuery 进度条?

Posted

技术标签:

【中文标题】使用 WCF Duplex 回调更新 JQuery 进度条?【英文标题】:Update a JQuery progressbar using WCF Duplex callbacks? 【发布时间】:2012-06-17 21:01:43 【问题描述】:

我在 IIS (.NET 4.x) 上托管了一个相当简单的 WCF 双工服务

一个特定的服务方法运行时间很长(1-3分钟),当这个方法被客户端触发时,我想通过页面上的JQuery进度条向用户提供视觉反馈,该更新基于在多个回调期间传递的整数值上。

我愿意放弃双工实现,但当时这似乎是合乎逻辑的方法......

解决此问题的最佳方法是什么,请记住,我希望最大限度地减少开销,并避免引入更多技术,如 silverlight(尽管我意识到这是解决此问题的完美可行的解决方案)。

具体来说,一些代码示例可能会有所帮助。另请注意,我对 JQuery 和 WCF 都是新手。

我不确定要提供哪些其他信息才能使这个问题更清楚,所以如果您需要更多信息,请询问,我会修改原始问题。

【问题讨论】:

【参考方案1】:

这在不迁移到 Silverlight 的情况下使用标准 WCF 是不可行的,因为您需要在浏览器中使用轮询双工通道。

有an AJAX implementation of the client side of the PollingDuplex protocol done some time ago,它允许您更新客户端进度条以响应来自服务器的进度更新(有点——它仍然需要客户端轮询)。不确定它是否适用于最新版本的 PollingDuplex。

【讨论】:

以上是关于使用 WCF Duplex 回调更新 JQuery 进度条?的主要内容,如果未能解决你的问题,请参考以下文章

WCF Duplex 是一个不错的选择吗?

当 WCF 方法抛出异常时,使用空响应调用 jQuery 成功回调

WCF Duplex中客户端突然崩溃怎么办

Duplex or request-reply with Apache ActiveMQ WCF Binding 配置问题

我需要采取哪些步骤才能使用 WCF 回调?

服务器上 WCF(双工)中的内存泄漏