前置库
安装 edge-js
1 2 3
| npm install edge-js
yarn add edge-js
|
edge-js
可以帮助我们调用C#编译的DLL文件, 前提:
- 版本是在 .net4.5以上,
- C#编写的Dll要通过async修饰后才能被node调用
- 在electron中需要换成
electron-edge-js
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;
namespace Baldurs_Gate_3 { public class StartUp { public async Task<object> Invoke(object param) { return "Hello World!"; } } }
|
调用
假如我们上面生成的dll 名称是 Baldurs Gate 3.dll
, 在 node 中可以这样写:
1 2 3 4 5 6 7 8 9 10
| let Invoke = edge.func({ assemblyFile: "Baldurs Gate 3.dll", typeName: 'Baldurs_Gate_3.StartUp', methodName: 'Invoke' })
Invoke(null, (error: any, result: any) => { console.log(result); })
|