0

背景

我正在开发一个集成项目,我们的 webapp 将与在 .Net 中开发的第 3 方桌面应用程序进行通信。第三方应用程序公开 .Net API(以及 ActiveX 组件)以进行集成。我们的选择之一是使用 JavaScript 中的 ActiveX 组件。由于用户同时与我们的网络应用程序和第三方桌面应用程序进行交互,因此这里没有使用网络服务的范围。

根据 POC 测试,与调用 3rd 方原生 API 的原生 .Net 应用程序相比,使用 webapp 中的 ActiveX 非常慢。遗留架构和客户承诺排除了在 .Net 中重写我们的应用程序。这让我们可以选择从 JavaScript 调用 3rd 方 API。

Legacy 也将我们的浏览器限制为 IE。

问题

如果可以直接从 JavaScript 调用 .Net API,这就是我产生疯狂想法的地方。在我几个小时的研究中,我没有发现任何具体的东西。我最接近的是这个问题。但即使在这里,公认的答案是使用 COM

我想这需要在 IE 中加载 .Net 框架。

有没有人从 JavsScript 本地调用 .Net API?如果是,请帮助我了解如何实现这一目标。

4

1 回答 1

0

我的问题是“你从 .NET 集成了什么?如果只是业务和数据逻辑,几乎不涉及用户界面,那么 Web 服务就可以解决问题。

.NETAPI -> 网络服务 -> javascript

我在这类项目中遇到的问题是桌面和 Web 之间的架构差异。当您在桌面 api 上时,分页会为您处理好,但在 Web 上,您必须编写逻辑来进行分页。Web 服务不是为发送 50K 记录而设计的,当它通过Web 服务层时,它会大大降低速度。

于 2013-04-03T16:19:16.217 回答