Asp.net 有了信号器,是否可以只发送一个人或一组信息?

Asp.net 有了信号器,是否可以只发送一个人或一组信息?,asp.net,model-view-controller,signalr,chat,message,Asp.net,Model View Controller,Signalr,Chat,Message,包括MSDN在内的许多网站都以向所有客户端发送消息为例 比如,;对于Clients.All.addNewMessageToPage(),消息将发送给所有用户 如果我只想向正在聊天的一群人发送消息,该怎么办 或向单个联系人发送消息… 谢谢…是的,您可以通过加入这样的群组发送给群组 public class ContosoChatHub : Hub { public Task JoinRoom(string roomName) { return Groups.Add(

包括MSDN在内的许多网站都以向所有客户端发送消息为例

比如,;对于Clients.All.addNewMessageToPage(),消息将发送给所有用户

如果我只想向正在聊天的一群人发送消息,该怎么办

或向单个联系人发送消息…


谢谢…

是的,您可以通过加入这样的群组发送给群组

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);
    }
}
并通过将消息发送到此组

Clients.Group(groupName).addChatMessage(name, message);
您可以查看此链接以了解更多信息

如果您使用的是asp身份验证之类的身份验证,则可以通过其连接id或用户名发送给单人。请向上投票回答我很抱歉,我没有使用Signal的经验。如何使用SessionID发送给单个联系人?或者信号器是否为此提供特定的ContactID?非常感谢。您需要了解有关信号器的更多信息每个成员连接到集线器获取唯一连接idI不使用Asp.NET成员资格。相反,我有自己的会员制度。我将自己的用户信息保存在数据库中。例如,James Bond,UserID{AF433-DA322…-…}Uniqueidentifier我正在为SignalR创建一个connectionID,或者我想定义一个成员。如何与自己数据库中的用户信息关联?目的是向数据库中的成员发送消息。例如GUID userID={AF433-DA322……-………}[James Bond:)]Clients.User(userID).send(message);无论如何,您如何在用户和数据库之间建立关系?我怎样才能推广它?