I want to understand the philosophy behind UserIdentifier, ConnectionId and Groups in ASP.NET Core SignalR? Isn't it true that same UserIdentifer (represents as user) can have multiple signalR connection IDs? If so why use groups to club connections together? Why not club connections under one UserIdentifier?
Difference between UserIdentifier, ConnectionId and Groups in SignalR Core
1.8k views Asked by Aritra Sur Roy At
1
There are 1 answers
Related Questions in ASP.NET-CORE
- Windows environment variables at appsettings.json
- Which approach is right while creating a service for your update method?
- New Blazor Web App, Password Reset "A valid antiforgery token was not provided"
- No webpage was found for the web address: https://localhost:7002/Category/Add?area=Admin. Why is my URL generated like ?area=Admin instead of /Admin/
- how to get the html for a tag helper in code
- How to share authorization implemented in the server project with the client project in Blazor Web App Auto project?
- Why https is disabled on publish in .NET Core 7.0
- How to set language in a server-side rendering blazor app
- How can I debug server side rendering blazor code in a component?
- ASP.NET Core 6 randomly returning 200 with empty response
- ASP.NET Core MVC : NullReferenceException: Object reference not set to an instance of an object
- ASP.NET Core Identity Custom Register Endpoint
- VS Community 2022 cannot install dotnet-ef when i try to publish
- How does ASP.NET Core Identity ensure username is unique under concurrent conditions?
- In clean architecture, is the presentation layer allowed to communicate directly with the infrastructure layer?
Related Questions in ASP.NET-CORE-SIGNALR
- Injecting IHubContext into my background service for SignalR in .NET 5
- SignalR Client won't print the Queue Position
- Accessing SignalR Hub instance from Outside Class in .net Core
- Blazor 8 Push Notifications
- Print Queue State Every 10 seconds C# SignalR
- SignalR net core 3.1 start the server via hamachi
- Rapidly opening new tabs with SignalR using Long Polling causes the last several tabs to never finish loading
- FailedToNegotiateWithServerError when making connection between NodeJs express api and .net signal r hub
- Why is SignalR starting up to 8 servers per Blazor Server app start?
- SignalR mysql connection string .NET Core
- Connection failure when using SignalR with Azure APIM and an Application Gateway
- SignalR: WebSocket closed with status code: 1006 (no reason given) called while in state Connected
- Interoperability between client using Microsoft.AspNet.SignalR 2.4.3 and server built on Microsoft.AspNetCore.SignalR 6.0.1
- Upload SignalR Server to Windows Server IIS
- ASP.NET Core multiple types of web convergence cases
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Yes, a single user in
SignalRcan have multiple connections to an app. For example, a user could be connected on their desktop as well as their phone. Each device has a separateSignalRconnection, but they're all associated with the same user.A group is a collection of connections associated with a name. Messages can be sent to all connections in a group while each connection can be associated with different users. Groups are the recommended way to send to a connection or multiple connections because the groups are managed by the application. A connection can be a member of multiple groups.
You could send a message to a specific user by passing the user identifier to the User function in a hub method, as shown in the following example:
If a message is sent to the user, all of the connections associated with that user receive the message. The user identifier for a connection can be accessed by the
Context.UserIdentifierproperty in the hub.Calls a method on a specific connected client
Calls a method on all connections associated with a specific user
Calls a method on all connections in the specified group
There are also more methods in Hub.Clients.
SignalR is very flexible and allows many options based on need. You can find more details about users and groups in SignalR here.