【发布时间】:2009-11-29 05:31:52
【问题描述】:
不确定我是否会正确解释这一点,但这里是。我已经为后面的代码编写了一个使用 C# 的 asp.net 应用程序。在用户做出一些选择并点击“运行”按钮后,我将处理传递给用 C# 编写的 dll,但我想要的是一种定期将信息发送回客户端的方法,这样他们就可以看到发生了什么,比如有多少条记录已经被处理和类似的事情。我怎样才能做到这一点?
谢谢
【问题讨论】:
标签: c# asp.net long-polling
不确定我是否会正确解释这一点,但这里是。我已经为后面的代码编写了一个使用 C# 的 asp.net 应用程序。在用户做出一些选择并点击“运行”按钮后,我将处理传递给用 C# 编写的 dll,但我想要的是一种定期将信息发送回客户端的方法,这样他们就可以看到发生了什么,比如有多少条记录已经被处理和类似的事情。我怎样才能做到这一点?
谢谢
【问题讨论】:
标签: c# asp.net long-polling
【讨论】:
有很多方法可以完成这种任务。我提出了一些想法
解决方案 1:
你可以使用 Ajax Timer Control.
解决方案 2:
创建一个Windows Service,它将读取信息并与asp.net 应用程序交互以通知所请求的信息。它将充当后台工作人员。
希望对你有帮助
【讨论】:
这可能是我对问题的措辞,但我找到了我要找的东西。您可以使用 HttpResponse.Flush 方法来实现我想要做的事情。
【讨论】:
这通常称为HTTP Server Push 或HTTP 流媒体 或长轮询。取决于它是如何完成的。
您还可以在 HTTP Streaming 上查看这个 SO question...
Cross-browser implementation of "HTTP Streaming" (push) AJAX pattern
或者这个有一个长轮询的例子
【讨论】: