问题标签 [edge.js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
131 浏览

c# - Edge + Express + SQL Server 无法解释 StackOverflow

所以我一直在用头撞墙,试图弄清楚这一点。每当我尝试使用几种不同的方法从 SQL Server 检索数据时,StackOverflow 都会使我的服务器崩溃,但我无法查明问题的确切原因。

我已经能够用 Express 组合一个结构,当服务器启动时从我的数据库中检索数据,但是当我将路由附加到相同的方法时,我得到了“the”StackOverflow(我不确定是否有崩溃的单一原因,或者我正在处理两个单独的问题,这两个问题都表现为堆栈溢出)

我将把这个问题集中在一个堆栈溢出上,希望它负责所有的崩溃。

无论如何,这是能够将 .NET 类库中的数据编组回节点的服务器配置(这反过来又使 ADO.NET 调用我的 MSSQL 数据库):

每当服务器启动时,都会检索存储库的列表并将其假脱机到控制台;但是,如果我使用我的 /tickets 路由,服务器会因堆栈溢出而崩溃。

“好”的回应: 当数据被封送回节点时,控制台的图像

当我尝试激活我的路线时发生的崩溃(真正的路线被命名为'tickets') 当我尝试激活我的路线时的崩溃图像

我对 node 或 express 不是很有经验,所以我不完全确定我是否正确指定了 '/tickets' 路由。

0 投票
1 回答
323 浏览

c# - EdgeJS 在 Win2008 R2 上失败

一个简单的 C# 控制台应用程序无法在安装了 .Net 4.5.2 和 VC++ 2013 Redist 的 Windows 2008 R2 服务器上运行。

代码如下

这是错误信息

任何帮助将不胜感激!

0 投票
1 回答
532 浏览

node.js - 在 openshift 上使用 edge js

我正在尝试使用Edge.js在我的 OpenShift 盒式磁带上运行 C# 。它在我的 Windows PC 上运行得非常好,我想让它在云上运行。
我猜它在 Linux 环境中运行,但我不舒尔。
起初我试图让它与我的 MSSQL DB 一起工作,而不是继续使用 C# 程序集。尽管如此,我正在执行与我如何让它在我的 Windows 机器上工作相同的步骤,但我一遍又一遍地遇到相同的错误。
我已将 edge 和 edge-sql 添加到我的 npm 和 package.json 中。
然后我对我的 MSSQL DB 做了一个简单的计数。当我在本地运行它时效果很好。然后我将它推送到 OpenShift 并跟踪应用程序,因为前端给了我一个错误 503,接下来我知道下面的错误让我把手放在头发里。

有人可以帮我解决这个错误,或者向我解释为什么它可以/不会工作吗?

0 投票
1 回答
324 浏览

asp.net - 尝试为 EdgeJS 创建 VB.Net 集成

我创建了这个项目,它基本上是这个项目的尝试克隆,但使用SharpDevelop 4.4从 C# 转换为 VB ,然后使用 VS 2015 构建

我的问题可以在 GitHub 上找到但这是我在运行 NodeJS 项目时遇到的错误:

EdgeVB 错误

我的 NodeJS 项目中的一些代码不起作用:

运行此 C# 时,它确实有效:

我基本上已经尝试使用本指南来创建这个项目。

我已经尝试了各种方法来修复这个错误,每一个都和前一个一样无益。我希望有比我更深入的 .NET 知识的人指出一个明显的错误!

请帮助这个可怜的灵魂因头发撕裂而秃顶!

0 投票
0 回答
477 浏览

.net - 抛出 StackOverFlowException 并终止进程 #253

我不确定这是 Edgejs 的问题,我只是希望有人遇到同样的问题,并给出一些建议如何找出原因。无论如何,应该从.net运行时发生“由于StackOverflowException而终止的进程”,对吗?

图片

我的 Nodejs 代码是 tcp 服务器,每当收到数据时,它都会调用 .net 代码,而 .net 代码只负责将数据存储在 sql server 中。定义边缘功能的Nodejs代码如下:

});

以下是 updateStation 函数的 .net 代码:

ConnectString 从 Dll 的配置文件中读取,如下所示:

我只是使用实体框架来访问 sql server,而不是更复杂的代码。我很困惑,我查看了我的代码,没有找到任何递归调用。

关键是StachOverflowException在程序运行一段时间后发生,并不总是在同一个地方或同一时间发生,这对我来说很奇怪,看起来是随机的,但一段时间后总是发生异常,它是关于不超过 1 分钟。

0 投票
1 回答
1495 浏览

node.js - 从 C# 调用 Edge.js 时,如何挂钩 stdout 和 stderr?

背景

我正在开发一个当前通过 Process.Start() 运行 Node 的 C# 程序。我正在从这个子进程中捕获标准输出和标准错误,并出于我自己的原因重定向它。我正在考虑用对 Edge.js 的调用来替换 Node.exe 的调用。为了能够做到这一点,我必须能够从 Edge 中运行的 Javascript 可靠地捕获 stdout 和 stderr,并将消息返回到我的 C# 应用程序中。

方法一

如果有人推荐它,我将描述这种方法的完整性:)

msgs如果 Edge 进程终止,通过简单地声明一个数组并覆盖process.stdout.writeprocess.stderr.write使用在该数组上累积消息的新函数,然后在最后简单地返回该数组来处理这个问题是相当容易的msgs。例子:

显然,这仅在 Edge 代码终止时才有效,并且在最坏的情况下 msgs 可能会变大。但是,它可能表现良好,因为只需要一次编组调用即可获取所有消息。

方法二

这有点难以解释。我们不是累积消息,而是使用从 C# 发送的委托来“挂钩”stdout 和 stderr。在 C# 中,我们创建一个将传递给 Edge 的对象,该对象有一个名为 的属性stdoutHook

我真的可以使用 Action,但 Edge 似乎需要Func<object, Task<object>>,否则它不会代理该功能。然后,在 Javascript 中,我们可以检测到该函数并像这样使用它:

问题

Q1。这两种技术似乎都有效,但是有没有更好的方法来做到这一点,Edge 内置的东西可能我错过了?这两种解决方案都是侵入性的——它们需要一些 shim 代码来包装要在 Edge 中完成的实际工作。这不是世界末日,但如果有一种非侵入性的方法会更好。

Q2。在方法 2 中,我必须在这里返回一个任务

返回一个已经完成的“空任务”感觉不对。但是还有另一种写法吗?

Q3。在挂钩 stdout 和 stderr 时,我是否需要在 Javascript 代码中更加严格?我注意到在 double-edge.js 中有这段代码,坦率地说我不确定这里发生了什么,但它比我对 process.stdout.write 的粗略覆盖要复杂得多 :-)

0 投票
2 回答
596 浏览

c# - 有没有办法通过 edge.js 连接到 MS Access .accdb

我需要能够通过 nodejs 连接到 .accdb MS Access 2007 数据库。我目前通过win32ole库执行此操作。该库似乎已失去支持,并且尚未更新为与 node v.12 一起使用。

我目前正在使用 edge.js 连接到 SQL Server 2012。我想知道是否有可能通过这个连接到 .accdb 数据库。它似乎利用 ADO.NET 的 sql 函数。我的理解是 MS Access 需要本机 ODBC 或 OLEDB。

如果不通过edge.js的sql函数,另一种可能是写C#使用OLEDB连接MS ACCESS,全部封装在edge.js中。有没有这样做的例子?

我的最后一个选择是找到另一个单独的库来连接到 Node.js 中的 MS Access。它们似乎很少见。 Node-Adodb可能会工作..

0 投票
0 回答
264 浏览

node.js - 安装 node.js、express 和 edge 后出现 Sigsegv 错误。模块版本不匹配?

我是新手,我在 MacOS Yosemite 10.10.4 版本上成功安装了以下

  1. node.js v0.12.2
  2. 边缘@0.10.0
  3. 边缘-sql@0.1.0
  4. 快递@4.12.3

当我安装 Node 和 express 时,这一步一切正常当我安装 edge 时,我按照 tjanczuk 在他的网站https://github.com/tjanczuk/edge上的安装步骤进行操作, 我没有收到任何错误。

当我现在尝试运行我的应用程序时

我收到 sigsegv 错误

我究竟做错了什么??

0 投票
2 回答
301 浏览

edge.js - 如何使用 T-SQL 脚本调用带参数的存储过程?

我们使用 edge-sql 来执行 T-SQL 脚本以及通过 C# 的存储过程。我最近注意到已经添加了存储过程支持,我正在尝试执行将是:

在 SQL Server Management Studio 中,使用 edge-sql 0.1.2。

我玩过几种变体,但我收到了 2 条错误消息之一。cannot find stored procedure ''通过 C# 方法调用时,存储过程在edge.sql"cannot find stored procedure 'sgRouteExportDelete @TripDate='2014-05-06', @RouteId = 1234, @Action='DELETE', @Comment='xxxxxx'"中执行得很好。

我做了一些额外的实验,发现我可以执行不带参数的存储过程:exec dbo.sgVersionGet,但是任何带参数的存储过程都会返回错误。

那么我做错了什么?如上所述,我如何使用非硬编码的参数值进行调用?SQL Server 和 edge 都使用 @ 字符来解析参数。

任何帮助表示赞赏...

-比利B

0 投票
1 回答
846 浏览

javascript - 如何从 DLL 创建对象并使用 edge.js 调用其方法之一?

我目前正在研究 edge.js 的可能性,因为它将极大地帮助我们完成当前的项目。我需要的是:我确实有一个 C# DLL(为 4.5.1 编译),我们在标准 C# 应用程序中使用它。这个 DLL 包含一个TcpMessageListener我通常会实例化和使用的类(例如,在 Windows 窗体中):

上面的代码通常在应用程序启动并开始侦听给定端口时创建一个侦听器(我可以使用 netstat 或类似工具快速检查)。

现在,当我运行节点代码时,我想让同样的事情发生,但我不知何故错过了重点,没有走上正轨。我应该补充一点,我对 node.js 完全陌生,只是潜入其中,请耐心等待。

根据我在 edge.js 站点上的所有示例中看到的内容,我是这样尝试的:

但是有两个问题:首先,上面的代码显然没有创建监听器的实例,但是我想不通我将如何创建一个TcpMessageListener类的实例,然后调用它的Start()方法。

从给定的代码中,您将如何创建一个侦听器并使用 node.js 和 edge.js 在后台侦听给定端口?我觉得在深入之前我只需要一个稳定的起点。

(最终目标是接收某些消息的后台侦听器。收到消息时,应该向 Web 用户呈现最后收到的消息内容,而不是“Hello World”。我想我可以从那里弄清楚其他所有内容.)