2017-05-13 2 views
0

Viele Websites, einschließlich MSDN, haben das Senden von Nachrichten an alle Clients veranschaulicht.Mit SignalR, ist es möglich, nur eine Person oder eine Gruppennachricht zu senden?

Zum Beispiel; Mit Clients.All.addNewMessageToPage() wird die Nachricht an alle Benutzer gesendet.

Was soll ich tun, wenn ich nur eine Nachricht an eine Gruppe von Personen senden möchte? wer plaudert?

oder eine Nachricht an einen einzelnen Kontakt zu senden ...

Danke ...

Antwort

1

ja Sie Gruppe von Menschen durch den Beitritt Gruppe wie diese

senden
public class ContosoChatHub : Hub 
{ 
    public Task JoinRoom(string roomName) 
    { 
     return Groups.Add(Context.ConnectionId, roomName); 
    } 

    public Task LeaveRoom(string roomName) 
    { 
     return Groups.Remove(Context.ConnectionId, roomName); 
    } 
} 

und Nachricht von

zu dieser Gruppe senden
Clients.Group(groupName).addChatMessage(name, message); 

Sie diesen Link für weitere Informationen überprüfen https://docs.microsoft.com/en-us/aspnet/signalr/overview/guide-to-the-api/working-with-groups

+0

Ist es die gleiche Art und Weise an eine einzelne Person zu senden? Danke ... –

+0

können Sie an einzelne Person durch seine Verbindungs-ID oder durch seinen Benutzernamen senden, wenn Sie Authentifizierung wie ASP-Identität verwenden bitte Up-Stimme die Antwort –

+0

Es tut mir leid, ich habe keine Erfahrung mit SignalR. Wie verwende ich SessionID, um an einen einzelnen Kontakt zu senden? Oder bietet SignalR hierfür eine spezifische ContactID? Vielen Dank. –

Verwandte Themen