c# - SignalR - 从 Windows 服务中的串行端口读取
问题描述
我需要在我的 Windows 服务中从 SerialPort 读取数据,该服务使用 SignalR 与连接到该串行端口的 RFID 阅读器进行通信。在读取数据时,我想向信号器客户端发送数据。我不知道如何使它在服务中工作。我也找不到任何可行的解决方案来解决这个问题。
解决方案
正如@TheGeneral 评论的那样,您有多个问题需要解决。您没有提供框架,所以我引用的是 4.xx 和 SignalR 2.4.1 的较低级别(不是 .NET CORE 版本,尽管适用相同的原则)。
- 创建一个Windows 服务。
- 您的 Windows 服务可以使用.Net 客户端并成为客户端。
- 在您的 Windows 服务中,您可以读取来自串行端口的数据。
- 使用读取的数据,服务可以调用 HUB 中的方法。
- 您的 HUB 可以使用 Clients.Others 进行广播,以向除您的服务之外的所有客户端发送消息。
您将需要计算连接的生命周期、连接失败或不可用时服务中发生的情况等。
推荐阅读
- makefile - GNU make:代码生成器的正确依赖关系和已删除文件的处理
- python - 如何在 Python 中编写 if 语句以更好地优化?
- django - 如何在自引用外键中引用所有具有现有查询的子对象?
- python - 我的“检查值字符串是否等于字典练习”的错误是什么?
- azure - 使用 F# 进行 Azure.Data.Tables 序列化
- javascript - 如何在 div 框中显示来自 javascript innerhtml 的文本输出,而不会导致文本溢出并具有 html/css 样式
- java - 当我尝试将代码推送到 Rev Driver Hub 时出现错误
- firebase - 如何在所有 Firebase 文档中添加新字段?
- javascript - 如何将图像放置在侧边栏的左下角?
- python - 将数据合并为单个电子邮件:Python