Obtenir de l'actuel, pôle d'SignalR

Est-il un bon moyen pour appeler des méthodes dans SignalR hub à partir d'un contrôleur ?

Maintenant j'ai ceci:

public class StatsHub : Hub
{
    private static readonly Lazy<StatsHub> instance = new Lazy<StatsHub>(() => new StatsHub());
    public static StatsHub Instance { get { return instance.Value; } }

    public StatsHub()
    {
        if (this.Clients == null)
        {
            var hubContext = SignalR.GlobalHost.ConnectionManager.GetHubContext<StatsHub>();
            this.Clients = hubContext.Clients;
            this.Groups = hubContext.Groups;
        }
    }

    //methods here...
}

donc dans mon contrôleur actions que je peux dire, par exemple

StatsHub.Instance.SendMessage("blah");

et c'est presque bon, sauf que hubContext ne dispose pas de l'Appelant ou de propriétés de Contexte de Hub - qui sont bien d'avoir.

Heureusement, il existe une meilleure façon de le faire ?

InformationsquelleAutor Evgeni | 2012-09-15