0

我的软件分为两部分:

  1. 托管在服务器上的 ASP .Net Core 3.1 应用程序
  2. .NET Framework 4.8 WinForms 应用程序部署在客户端PC上(如果这大大简化了问题的解决方案,我可以尝试将其放置在服务器上)。我需要这个单独的应用程序的原因是第三方控件仅适用于 .NET Framework 桌面 - WinForms 和 WPF(不幸的是,我无法避免使用或替换它)。

是否可以在ASP Net Core HTML 页面中运行该客户端 PC 应用程序?我不需要使用 System.Diagnostics.Process 或类似技术启动它,我想以某种方式将它嵌入到 ASP 框架中。类似于 WFP 的 WindowsFormsHost 或 WinForms 的 ElementHost。

任何帮助表示赞赏。先感谢您。

4

1 回答 1

2

基本上,您有以下选择:

  • 将您的桌面应用程序包装到 ActiveX 中,使用IE Tab扩展程序(或类似的扩展程序),并在页面上运行 ActiveX。最糟糕的一个是因为 ActiveX。事实上,您将无法使用现代浏览器功能。
  • 抛弃 Web UI。如果您需要桌面应用程序(不管为什么),请在服务器端使用桌面应用程序和 Web API。最简单和最明显的一个。您仍然与桌面相关联,那么忽略这个事实的原因是什么?
  • 在服务器端渲染提到的控件的输出,并将结果发送到浏览器。这取决于控件是什么、它做什么、它需要多少交互性等。此外,这假设您必须能够在您的服务器上运行 .NET 4.8 进程并从 .NET Core 应用程序与其通信。
于 2020-10-28T05:47:59.010 回答