我正在开发一个使用 Javascript.net(以前称为Noesis Javascript .net(作为脚本引擎的项目。
如何在 Javascript 中将 C# 方法添加到全局上下文中? 例如,假设我在 C# 中有:
public int Foo(int bar)
{
return bar * 2;
}
我希望能够调用Javascript:
var x = 5;
var y = Foo(x); // y is now 10;
在侏罗纪等其他库中,这是可能的:
engine.SetGlobalFunction("Foo", new Func<int, int>((a) => a*2));
此示例来自单元测试:
_context.SetParameter("f", new Func<string,string>((s) => s.ToUpper()));
_context.Run("f('Noesis') == 'NOESIS'").Should().BeOfType<bool>().Which.Should().BeTrue();