如何将 ASP NET Web 应用程序客户端与 NET 框架控制台应用程序服务器连接

Posted

技术标签:

【中文标题】如何将 ASP NET Web 应用程序客户端与 NET 框架控制台应用程序服务器连接【英文标题】:How to connect ASP NET web app client with NET framework console app server 【发布时间】:2021-05-20 07:56:10 【问题描述】:

我需要开发一个 NET Framework MVC Web 应用程序,该应用程序在一个表单中包含 5 个项目,每个项目包含一个描述和一个图像。例如,我需要将这些发布到服务器应用程序(本地),该应用程序获取这些数据并将其存储在 XML 文件中(无需使用关系数据库)。我的服务器应用程序是基于 NET Framework 的控制台。当我更改服务器中文件的描述时,我必须在客户端的 ASP NET Web 应用程序中“实时”显示更新的值,所以我需要以某种方式将文件的值发回给ASP NET 网络应用程序。我一直在寻找 signalR,但似乎更适合即时消息传递而不是处理文件,所以我认为 websockets 是一个好主意。似乎不太复杂,但我从未使用过 websockets,所以我想知道这是否可能与我上面的建议有关,所以我有几个问题:

ASP NET Web 应用程序和服务器控制台应用程序之间的这种数据流是否可行?在服务器中创建一个 Web API 来处理这个问题会更好吗? 如何将数据从客户端 Web 应用程序发送到控制台,通过 URL 是一个不错的选择吗? 谁能提出一个更简单或更可行的解决方案?

非常感谢这里的帮助。

【问题讨论】:

【参考方案1】:

我会选择构建 API,因为您可以在更新发生变化时发送更新,无需等待或保持连接打开。

如果您确实需要实时发送更新,SignalR 结合了保持连接打开的不同方式,因此它可能是最佳选择。

我更喜欢使用 SimpleTcp 在服务器(Web 应用程序)和客户端(桌面或控制台)之间轻松建立 tcp 通信,所以这也是您可以考虑的。

【讨论】:

【参考方案2】:

SignalR 已经有 websocket 实现。例如,您的解决方案可能是在控制台应用程序中创建 signalR 集线器,然后使用 webapp 连接到它。在任一端调用改变另一端的方法。

【讨论】:

以上是关于如何将 ASP NET Web 应用程序客户端与 NET 框架控制台应用程序服务器连接的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有登录表单的情况下将摘要身份验证与 asp.net web api 和 angular js 一起使用?

如何将 Tally 与 Asp.Net Web 应用程序集成? [关闭]

强大的自托管服务器的最佳选择:WCF 与 ASP.NET Web Api

如何提高 ASP.Net Web 服务性能

如何让 CORS 与 ASP.Net Core Web API 服务器 Angular 2 客户端一起工作

Asp.net MVC 与 Asp.net Web API 区别