- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 Microsoft.Web.WebSockets
对于一个应用程序。
我有一个用户集合WebSocketCollection group;
我需要向除了一个人之外的所有人发送消息
group.Except(group.Where(r=>((MicrosoftWebSockets)r).user_id==1)).Broadcast("Message");
但是我使用 Except 子句的那一刻 WebSocketCollection
变成 IEnumerable<WebSocketHandler>
然后我不能使用广播方法。
任何其他方法都会有所帮助。
最佳答案
Broadcast
方法在 WebSocketCollection
上定义类(class)。在 WebSocketCollection
上应用 LINQ 查询时你得到一个IEnumerable<WebSocketHandler>
没有 Broadcast
方法。
您可以创建一个新的 WebSocketCollection
然后使用 Add
添加单个项目像这样的方法:
var handlers = group.Except(group.Where(r=>((MicrosoftWebSockets)r).user_id==1));
var collection = new WebSocketCollection();
foreach(var item in handlers)
{
collection.Add(item);
}
collection.Broadcast("Message");
您可以将此逻辑包装到这样的扩展方法中:
public static class ExtentionMethods
{
public static WebSocketCollection ToCollection(this IEnumerable<WebSocketHandler> handlers)
{
var collection = new WebSocketCollection();
foreach (var item in handlers)
{
collection.Add(item);
}
return collection;
}
}
然后像这样使用它:
group.Except(group.Where(r=>((MicrosoftWebSockets)r).user_id==1))
.ToCollection()
.Broadcast("Message");
顺便说一下,您的 LINQ 查询可以通过否定这样的条件以更好的方式完成:
group.Where(r=> !(((MicrosoftWebSockets)r).user_id == 1))
.ToCollection()
.Broadcast("Message");
关于c# - 将 IEnumerable<WebSocketHandler> 转换为 WebSocketCollection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36218315/
我想做的是拥有一个对象(它是一个在单独线程中运行的 gstreamer 进程),以便能够调用 WebSocketHandler 的 write_message() 函数 这是我目前拥有的一段代码 ap
在 python 方面,我创建了一个 WebSocketHandler。 from tornado import gen from tornado.escape import json_decode
我正在使用 Jetty 9 设置 WebSocket 处理程序。我见过使用 WebSocketHandler 或 WebSocketServlet 的示例。 这就是我正在做的事情: public cl
我正在开发一个必须支持客户端-服务器连接的应用程序。为此,我使用了允许我创建 WebSocket 的 tornado 模块。我打算始终处于运行状态,至少在服务器端。所以我非常担心在这些连接上创建的每个
我正在尝试传递 my_object 的实例作为初始化 WebSocketHandler 时的参数Tornado 中的实例,因此我可以在通信期间使用它。我尝试执行以下操作,但没有成功。 class WS
我在为通过 PerConnectionWebSocketHandler 使用的实现 WebSocketHandler 的类进行简单属性注入(inject)时遇到问题。 这个示例在没有 @Value 注
我有一个像这样初始化的 Tornado HTTPServer: ssl_options = { "certfile": "mycert.crt", "keyfile": "mykey.
我正在使用 Microsoft.Web.WebSockets对于一个应用程序。 我有一个用户集合WebSocketCollection group;我需要向除了一个人之外的所有人发送消息 group
是否可以同时运行 WebSocketHandler 和 WebAppContext?我使用的是最新版本 9.2.1.v20140609。我尝试了下面的配置,但是在 Websocket 调用 local
本文整理了Java中org.springframework.web.socket.WebSocketHandler.supportsPartialMessages()方法的一些代码示例,展示了WebS
本文整理了Java中org.springframework.web.socket.WebSocketHandler.handleMessage()方法的一些代码示例,展示了WebSocketHandl
本文整理了Java中org.springframework.web.socket.WebSocketHandler.afterConnectionEstablished()方法的一些代码示例,展示了W
本文整理了Java中org.springframework.web.socket.WebSocketHandler.afterConnectionClosed()方法的一些代码示例,展示了WebSoc
本文整理了Java中org.springframework.web.socket.WebSocketHandler.handleTransportError()方法的一些代码示例,展示了WebSock
通过以下两个最小示例应该可以重现该问题: 使用 app.run() 的最小示例 from flask import Flask app = Flask(__name__) @app.route('/'
我是一名优秀的程序员,十分优秀!