2

我正在开发一个 Webforms 项目,并且正在研究实现 node.js 和 issnode。我们正在使用:

  • 网络表格
  • IIS
  • C#
  • 实体框架
  • SQL 服务器

我们有一个页面需要一段时间才能加载,并且正在寻找提高其速度的方法。页面上显示了一些有用的计数,但会导致页面加载缓慢。(我们正在显示任务总数、组中的人数和组数)。

我在想我可以直接从 node.js 文件中调用我的 c# 代码。从我看到的例子和我读过的例子来看,这似乎不是我应该寻找的解决方案。由于我们使用的是 EF 并且我没有编写 SQL 查询,因此看起来我应该与服务进行交互。

所以我的问题是,我可以使用 Node.js 来调用我的 C# 方法吗?

4

2 回答 2

13

是的,您现在可以通过Edge.js执行此操作。

来自http://www.infoq.com/articles/the_edge_of_net_and_node

为什么使用 Edge.js?

虽然许多应用程序可以专门用 Node.js 编写,但有些情况需要结合使用 Node.js 和 .NET 或从中受益。出于多种原因,您可能希望在应用程序中使用 .NET 和 Node.js。.NET 框架和 NuGet 包提供了丰富的功能生态系统,可补充 Node.js 和 NPM 模块的功能。您可能希望在 Node.js 应用程序中重用预先存在的 .NET 组件。您可能希望使用多线程 CLR 来运行不太适合单线程 Node.js 的 CPU 密集型计算。或者,您可能更喜欢使用 .NET Framework 和 C#,而不是使用 C/C++ 编写本机 Node.js 扩展来访问尚未通过 Node.js 公开的特定于操作系统的机制。

于 2014-05-28T20:28:34.457 回答
0

您的问题有点晦涩,所以我将提出我认为的要点:

我在想我可以直接从 node.js 文件中调用我的 c# 代码。

老实说,我不知道这是否可能,我对此表示怀疑,但我并不好奇想弄清楚,因为这是一个坏主意。

从我看到的例子和我读过的例子来看,这似乎不是我应该寻找的解决方案。由于我们使用的是 EF 并且我没有编写 SQL 查询,因此看起来我应该与服务进行交互。

绝对,除了 EF 或 SQL 与你为什么不应该这样做完全无关。我知道这可能是一种心理转变,尤其是在 .Net 领域,但 Node 在鼓励和授权使用处理非常具体的任务(想想地理编码、分析、时间码查找、索引、搜索、通知)的微应用程序方面做得非常好等)然后可以通过服务调用或其他机制合并在一起。

我们有一个页面需要一段时间才能加载,并且正在寻找提高其速度的方法。页面上显示了一些有用的计数,但会导致页面加载缓慢。(我们正在显示任务总数、组中的人数和组数)。

我已经很长时间没有使用过 .Net 或 EF 了,但如果我猜的话,我建议你先分析一下。我几乎愿意打赌你有一个 N+1(或更糟)的问题,可以很容易地解决。

于 2012-11-09T21:28:51.903 回答