SignalR 与 ASP.NET MVC 和 WinForms

pro*_*mar 4 c# asp.net winforms asp.net-mvc-4 signalr

我有一个 ASP.NET MVC 应用程序,其中包含通过 SignalR 调用的函数。ASP.NET 应用程序运行良好,所有客户端的数据都实时更新。

我可以创建一个 WinForms 应用程序并连接到同一个 SignalR 应用程序并通过它向我的 Web 应用程序推送数据吗?如果是这样,我如何通过 WinForms 连接到我的 SignalR Asp.NET MVC 应用程序。

Luc*_*rsi 5

当然!您可以使用 SignalR 客户端连接到在 ASP.NET 应用程序中运行的服务器。

检查这个对于一个控制台应用程序的完整样本(但它的的WinForms相同)。

您需要使用Microsoft.AspNet.SignalR.Client.Hubs比您可以创建这样的连接:

    var hubConnection = new HubConnection("http://localhost:53748");
    var chat = hubConnection.CreateHubProxy("ChatHub");

    chat.On<string, string>("broadcastMessage", (name, message) => { Console.Write(name + ": "); Console.WriteLine(message); });

    hubConnection.Start().Wait();
    chat.Invoke("Notify", "Console app", hubConnection.ConnectionId);
Run Code Online (Sandbox Code Playgroud)