【问题标题】:Pushing notifications from webserver to winforms client application将通知从 web 服务器推送到 winforms 客户端应用程序
【发布时间】:2012-09-10 09:50:34
【问题描述】:

我正在为我们的 Winforms 应用程序寻找解决方案。我想知道是否有可用的技术可以将通知推送到 .net Winforms 客户端。我想要的是,当应用程序启动时,它可以从 php 网络服务器检索通知。

我已经看过 node.js 之类的东西,一些示例展示了如何将通知推送到网站而不是客户端。而且我不知道这些技术是否可以用于我想要的。你们中有人有这方面的经验吗?

谢谢,

【问题讨论】:

    标签: .net winforms node.js web push-notification


    【解决方案1】:

    您可以使用ASP.NET with SignalR
    该站点上的示例使用 WPF,但您可以使用 WinForms 执行完全相同的操作。

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

    【讨论】:

    • 据我所知,SignalR 没有 PHP 服务器堆栈。它需要服务器端的 IIS 和 ASP.Net。
    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

      这正是响应式扩展 (RX) 的设计目的。使用 RX,客户端“订阅”到“主题”,类似于事件处理程序注册侦听器的方式。它几乎支持任何类型,并且当接收到内容时,它是默认订阅的“在线程上”;但是,您可以将其附加到您想要的任何其他线程。 Lee Campbell 对此主题进行了出色的介绍。

      http://www.introtorx.com/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-09-11
        • 1970-01-01
        • 2023-03-23
        • 1970-01-01
        • 2016-01-10
        • 1970-01-01
        • 2014-06-06
        • 2011-04-26
        相关资源
        最近更新 更多