C# 使用持久连接客户端的信号器示例?

C# 使用持久连接客户端的信号器示例?,c#,signalr,C#,Signalr,我正在调查Signal,我不想写聊天客户端。相反,我希望创建一个具有持久连接的主机,并让一个C#.NET客户端(而不是网页)与其通信。有没有编写持久连接客户端的好例子 或者-Hub真的是唯一的方法吗?不,Hub API不是唯一的方法。web上有很多示例显示了如何使用PersistentConnections(例如,来自SignalR repo-这里的客户端是JavaScript,但使用C#时,您只需订阅事件-只要SignalR客户端接收到消息,它就会调用接收到的事件处理程序)。 集线器基本上是一

我正在调查Signal,我不想写聊天客户端。相反,我希望创建一个具有持久连接的主机,并让一个C#.NET客户端(而不是网页)与其通信。有没有编写持久连接客户端的好例子


或者-Hub真的是唯一的方法吗?

不,Hub API不是唯一的方法。web上有很多示例显示了如何使用PersistentConnections(例如,来自SignalR repo-这里的客户端是JavaScript,但使用C#时,您只需订阅事件-只要SignalR客户端接收到消息,它就会调用接收到的事件处理程序)。 集线器基本上是一个更高级别的API,这使得使用信号器更容易。持久连接是关于发送/接收原始字符串,而集线器是关于从服务器或其他方式调用客户端上的函数。然而,集线器被实现为持久连接之上的一个层,其中消息是JSon格式的,而不是原始字符串,客户端和服务器都相应地解释它们


我在signar协议中介绍了持久连接和集线器(有关持久连接,请参阅持久连接消息部分)

谢谢。我还发现这个例子很有帮助:我故意没有给你指出这个例子-它有点过时,并且使用了
.Wait()
,这在很多情况下是不正确的,因为它可能会导致死锁(不过这应该是很好的控制台应用程序)。啊,谢谢你的警告!从2012年到现在,Owin/SignalR/WebAPI生态系统确实发生了很大变化。了解一些更有用的示例包含一些遗留信息会有所帮助。