相关疑难解决方法(0)

从SignalR呼叫特定客户端

我想从服务器调用特定客户端,而不是向所有客户端广播.问题是我在一些AJAX请求的范围内(在.aspx代码后面说),而不是在Hub或PersistentConnection中,所以没有Clients属性 - 而且那个调用ajax(jquery)的客户端不是客户端我想发送信号消息!

现在,我有一个在JS页面加载上调用的集线器,它将新客户端注册到服务器静态列表中,所以我有客户端Guids.但是不知道如何使用它从服务器向特定客户端发送消息.

asp.net signalr

65
推荐指数
3
解决办法
8万
查看次数

signalR跟踪连接的用户

我需要检查特定用户是否仍然连接.

我有以下用于跟踪用户的HashSet:

public static class UserHandler
{
    public static HashSet<string> ConnectedIds = new HashSet<string>();
}
Run Code Online (Sandbox Code Playgroud)

因此断开连接:

    public override Task OnDisconnected()
    {
        UserHandler.ConnectedIds.Remove(this.Context.ConnectionId);
        if (UserHandler.ConnectedIds.Count == 0)
        {
               // STOP TASK -> SET CANCELLATION
        }
        return base.OnDisconnected();
    }
Run Code Online (Sandbox Code Playgroud)

并在连接上:

    public override Task OnConnected()
    {
        Logger.Log.file.Info("[TaskActionStatus HUB => OnConnected] Start");

        UserHandler.ConnectedIds.Add(this.Context.ConnectionId);

        // start task only if at least one listener
        if (UserHandler.ConnectedIds.Count < 2)
        {
            // START A TASK -> (WHILE LOOP THAT GETS DATA FROM DB EVERY 2 SEC)
        }

        return …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc signalr signalr-hub

5
推荐指数
1
解决办法
4164
查看次数

标签 统计

signalr ×2

asp.net ×1

asp.net-mvc ×1

signalr-hub ×1