Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Signalr 使用信号器向组内的一组用户发送消息_Signalr - Fatal编程技术网

Signalr 使用信号器向组内的一组用户发送消息

Signalr 使用信号器向组内的一组用户发送消息,signalr,Signalr,是否可以在SignalR中向组内选定的客户端发送消息 …无需维护您自己的订阅者列表,也无需使用上下文.Clients.Clients(includeConnectionIds[])默认情况下,Signal没有状态,或者它们实际上与组有关。。。但它不是很有活力。我和你有同样的问题。我需要向一个组的子集发送一条消息。。或者实际上我需要发送给年龄在x和y之间的客户 这对于组是不可能的,因此您必须自己实现功能。 臃肿丑陋 实际上,我最终使用了Xsocket.net,在这里,我可以使用lambda表达式将

是否可以在SignalR中向组内选定的客户端发送消息


…无需维护您自己的订阅者列表,也无需使用
上下文.Clients.Clients(includeConnectionIds[])
默认情况下,Signal没有状态,或者它们实际上与组有关。。。但它不是很有活力。我和你有同样的问题。我需要向一个组的子集发送一条消息。。或者实际上我需要发送给年龄在x和y之间的客户

这对于组是不可能的,因此您必须自己实现功能。 臃肿丑陋

实际上,我最终使用了Xsocket.net,在这里,我可以使用lambda表达式将客户机作为目标,而不必使用自定义静态列表/组等

不知道您的要求,但如果客户是通过以下方式完成的,则发送到任何子集:

this.SendTo(p => p.Age > x && p.Age < y, new {Message="hello world"},"message");

//Signature of the extension method is...
//SendTo<T>(this IXSocketController socket, Func<T, bool> expression, object obj, string eventname)
//So you can actually send to clients on any controller is specifying T
this.SendTo(p=>p.Age>x&&p.Age

祝您好运。

在SignalR 2.0中,您可以通过Clients.groups或Clients.Clients在一次呼叫中发送到多个组或多个连接。

谢谢,但是否可以发送到组的子集?例如:context.Clients.Group(groupName,仅限seclients.broadcastMessage(…);您可以发送给组中的每个人并排除某些连接,也可以发送给单个连接或一组连接。@davidfoll:如何将其发送给组中的特定用户?喜欢_signalrContext.Clients.Group(“groupName”).User(“userid”).sendMessage?没有办法做到这一点。您可以发送给用户并将组名作为参数传递,以便了解上下文。