SignalR push-notification au client spécifique avec MVC4

Je suis en train d'utiliser SignalR avec MVC4 projet c# pour envoyer des notifications push à une sélection de clients seulement.
Pour cela, je suis en utilisant contexte.Clients.Client " par le stockage.ConnectionId' en c# static variable {depuis pas utiliser de session avec signalr}.
Mais depuis contextConnectionId' est une variable statique; le message est toujours boardcasted à tous les clients 🙁

Est-il une alternative à la séance avec signal ou de toute autre manière élégante de le faire? (trouvé quelques post mais pas de réponses spécifiques)

Code comme ci-dessous:

javaScript

 $(document).ready(function (){
 {
    var chat = $.connection.PushNotify;
    chat.client.addNewMessageToPage = function (type, message) {
        if(type == "something")
        {
            alert(message);
        }
    }
    //Start the connection.
    $.connection.hub.start().done(function () {
        chat.server.send($('').val(), $('').val());
    });
 )}

En c# HUB

[HubName("PushNotify")]
public class PushNotify : Hub
{
    public void Send(string name, string message)
    {
        //assume its c# static variable
        GlobalVariable.contextConnectionId = Context.ConnectionId;
    }
}
public class PushNotification
{
    public void SendMessage(string message, string type = "msg")
    {
        if (!string.IsNullOrEmpty(GlobalVariable.contextConnectionId))
        {
            var context = GlobalHost.ConnectionManager.GetHubContext<PushNotify>();
            context.Clients.Client(GlobalVariable.contextConnectionId).addNewMessageToPage(type, message);
        }

    }
}
je pense que vous pouvez utiliser du groupe.asp.net/signalr/overview/guide-to-the-api/working-with-groups
Cela peut être intéressant: asp.net/signalr/overview/guide-to-the-api/...

OriginalL'auteur 10K35H 5H4KY4 | 2015-07-03