ClearScript是一个库,能够轻松地将脚本添加到.NET应用程序中。它目前支持JavaScript(经过V8和JScript)和VBScript.html
主机能够直接调用脚本函数和访问脚本对象。彻底支持脚本调试。node
本次使用C#来提供接口来调用js代码 , 首先安装clearScriptV8,在NuGet安装包中能够找到,c#
在代码中引用如下命名空间异步
using Microsoft.ClearScript.JavaScript; using Microsoft.ClearScript.V8;
using (var engine = new V8ScriptEngine("debug-v8engine", V8ScriptEngineFlags.EnableDebugging | V8ScriptEngineFlags.AwaitDebuggerAndPauseOnStart, 9222))// 这边定义一个变量engine 生成一个v8引擎 用来执行js脚本 // 里面的参数9222为调试端口, V8ScriptEngineFlags.EnableDebugging 是否启用调试模式 // V8ScriptEngineFlags.AwaitDebuggerAndPauseOnStart 异步中止或开始等待调试 // debug-v8engine 调试引擎模式 { engine.AddHostType("Console", typeof(Console)); //添加主机的模式。以便js能够调用主机这边的一些c#类型或、对象 /* engine.AddHostType("tt", typeof(test));*/ // execute 开始执行代码 , 里面填写js代码 engine.Execute(@"var a = 3; var b = 5; function add(a, b) { return a + b; } var result = add(a, b) Console.WriteLine(result);"); var a = engine.Script.tt; // 当你js代码中有你想返回值 ,能够用engine.Script.tt 这个tt能够是JavaScript里的一个var类型的变量 也能够是JavaScript中的一个函数调用语句,会返回函数中的值
主机中的代码已编写完毕, 如今要调试的话,须要有一个工具是Vistual studio code 这个软件,函数
这个软件须要添加一些调试配置文件工具
咱们须要在箭头所指的地方添加一些配置文件google
{debug
"type": "node",调试
"request": "attach",code
"name": "Attach to CSV8:9222 (Inspector)",
"protocol": "inspector",
"address": "127.0.0.1",
"port": 9222,
}
就是如上所述的这些,把这些粘贴在其余配置文件后面就完成了,保存一下,
而后点击小昆虫同样的图标, 在调试配置里选择你刚刚添加的哪一个配置信息,这样基本上就能够开始执行代码了
点击开始执行咱们vs里的代码,当运行到 engine.Execute(...//"js代码");时, 它会等待,这时咱们须要把vistualstudiocode打开,并点击F5 开始调试,它会把vs中execute中的js代码自动复制到vscode中运行,这样咱们的调试功能就能正常进行。