2013-07-14 42 views
0

我有一些第三方.net dll做了一些特定的工作。这些dll被编译并随附在node.js服务器将运行的服务器上安装的应用程序中。这些DLL作为软件的扩展提供,就像“API”一样。Node.js - 从本机模块调用.net dll函数

我不是node.js的专家,但从我的理解是,我无法从node.js服务器脚本文件调用.net dll。它必须是C++代码。我知道有一个名为Edge.js的模块,我可以使用它来做同样的事情。如果我错了,请纠正我。

是否有可能在C++中编写包装并调用这些.net方法?

我做了一些研究,发现这篇文章在微软网站上:Calling A .NET Managed Method from Native Code 我还没有尝试过,但我想知道是否有可能这样做?

现在我写了WebAPI方法,但这使得我运行两个Web服务器。一个用于托管WebAPI和一个节点服务器。

回答

2

就我个人而言,我认为你现在的解决方案是最好的,因为它会更稳定,它已经工作。

从本机代码调用.NET方法并不重要。请记住,这涉及将.NET运行时加载到节点进程中然后,您可以将所有各种数据格式从.NET编译为本地节点/ javascript等等......这似乎是edge.js所做的。所以如果你要在同一个进程中运行,使用edge.js。