2016-04-14 47 views
2

我有一個ASP.NET MVC應用程序,其中包括通過SignalR調用的函數。 ASP.NET應用程序工作正常,實時更新所有客戶端的數據。SignalR與ASP.NET MVC和WinForms

我可以創建一個WinForms應用程序並連接到相同的SignalR應用程序並通過它將數據推送到我的Web應用程序嗎?如果是這樣,我怎麼能通過WinForms連接到我的SignalR Asp.NET MVC應用程序。

+0

[官方文件的代碼樣本的WinForms(https://code.msdn.microsoft.com/Using-SignalR- in-WinForms-f1ec847b) –

回答

2

當然!您可以使用SignalR客戶端連接到在ASP.NET應用程序中運行的服務器。

檢查this的完整示例與控制檯應用程序(但它是相同的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); 
+0

THanks,所以如果我的web應用程序運行在http:// localhost:59842上,我的signalR應用程序將具有相同的地址?或者我必須爲我的signalR應用程序定義一個地址? – progrAmmar

+0

signalr服務器託管在您的mvc應用程序中,通常位於/ signalr路徑下;在這種情況下,您只需使用根網址(不帶/ signalr部分)。 –