ASP.NET& TCP服务器解决方案

时间:2013-01-08 10:48:15

标签: c# asp.net sockets tcp

我的服务器上运行了两个应用程序:

  1. 持续接受和发送消息的TCP套接字服务器    来自客户(C#.NET Winforms)
  2. ASP.NET应用程序
  3. 我需要的是:

    • 当通过TCP连接(app 1)从客户端收到消息时,我希望ASP .NET应用程序(app 2)动态反映这些数据。我意识到我可以通过TCP套接字设置数据库条目,然后由ASP.NET应用程序接收。
    • 从ASP .NET应用程序向客户端发送消息到TCP套接字服务器内可用的客户端的方法

    e.g。一个简单的聊天程序,客户端发送“Hi”,服务器响应“欢迎”。 ASP .NET应该显示此对话的日志。立即。如果我单击ASP应用程序上的按钮,它应该代表套接字服务器向客户端发送消息“您已被接受到服务器上”

    在大多数情况下,消息将会像这里显示的那样短暂。

    做A和B的最佳方法是什么?

2 个答案:

答案 0 :(得分:2)

如果您的“消息”主要是文本消息,您可能需要查看SignalR

SignalR是一个新的asp.net库,可以实现实时的Web功能。

它使用websockets(如果websockets在服务器/客户端不可用,则使用长轮询)。

它支持不同的客户端类型。

答案 1 :(得分:2)

如果您从另一个SignalR客户端(网页)收到消息,SignlaR是一个很好的解决方案。

但是如果这些消息是通过TCP / IP从第三个系统发送的呢? 然后,您需要在ASP.NET Web应用程序中打开TCP端口,并在收到消息后将其推送到Web客户端。

但问题是,在Web应用程序(ASP.NET)中托管这样的TCP侦听器的最佳方法是什么?