从Web服务器向WinForms客户端应用程序推送通知

4
我正在寻找我们Winforms应用程序的解决方案。我想知道是否有可用的技术可以将通知推送到.NET Winforms客户端。我希望当应用程序启动时,它可以从PHP Web服务器检索通知。
我已经看到了像node.js这样的东西,一些示例显示如何将通知推送到网站,但不是客户端。而且我不知道这些技术是否可以用于我想要的目的。你们有没有任何相关经验?
谢谢,
3个回答

1
您可以使用ASP.NET with SignalR。该网站上的示例使用WPF,但您可以使用WinForms完全相同的方式。

这是SignalR的概述
它允许您在服务器上从客户端调用方法,在客户端上从服务器调用方法。
正如您在这些网站上看到的那样,SignalR主要是为Web应用程序构建的,但是将其用于标准Winforms客户端也没有问题。

据我所知,SignalR没有PHP服务器堆栈。它要求服务器端使用IIS和ASP.Net。 - Xmindz

0

SignalR是一项很好的技术,可以与ASP.Net服务器端和客户端(如JavaScript、WinForms和WPF)一起使用。

由于您的服务器代码是用PHP编写的,因此无法直接集成SignalR。相反,您可以设置一个带有IIS 8或以上版本的Windows服务器,并部署一个中介ASP.Net网站,该网站将充当您的PHP服务器和WinForm客户端之间的中介人。 WinForm客户端将通过SignalR及其传输协议连接到ASP.Net服务器。您可以通过HTTP请求将通知发送到ASP.Net网站,然后ASP.Net网站将将通知传递给已连接的客户端。


0

这正是响应式扩展(RX)的设计初衷。使用RX,客户端“订阅”“主题”,类似于事件处理程序注册侦听器。它支持几乎任何类型,当接收到内容时,默认情况下它会在订阅的线程上运行;但是,您可以将其附加到任何其他线程上。Lee Campbell撰写了一篇关于此主题的优秀介绍。

http://www.introtorx.com/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接