Questo è legato al SignalR + posting a message to a Hub via an action method, ma la mia domanda è un po 'diverso:Invia un messaggio signalr da server a tutti i clienti
Sono sulla versione 0.5.2 di signalr, con gli hub. Nelle versioni più vecchie, si sono stati incoraggiati a creare metodi sul mozzo per inviare messaggi a tutti i clienti, che è quello che ho:
public class MyHub : Hub
{
public void SendMessage(string message)
{
// Any other logic here
Clients.messageRecieved(message);
}
...
}
Quindi, in 0.5.2, voglio inviare un messaggio a tutti i clienti (dì da qualche parte nel controller). Come posso accedere all'istanza MyHub
?
L'unico modo che ho visto in oggetto è:
var hubContext = GlobalHost.ConnectionManager.GetHubContext<MyHub>();
hubContext.Clients.messageRecieved("hello");
che va bene, ma voglio chiamare il metodo sul mio hub.
Questo è ora possibile anche in ASP.NET Core (sebbene SignalR stesso sia ancora in alpha all'ora corrente). Vedi [questa risposta dettagliata] (http://stackoverflow.com/a/38832879/957950) nella versione Core di questa domanda. – brichins