编程语言
首页 > 编程语言> > c# – 使用javascript进行自定义

c# – 使用javascript进行自定义

作者:互联网

我正在写一个光线跟踪器作为我的完整3D引擎的一部分.我打算使用javascript作为脚本语言而不是编写自己的脚本语言.问题是我该如何使用它?顺便说一下,光线跟踪器和UI是用C#编写的.

解决方法:

这显示了Javascript和c#之间的双向交互.

> Javascript调用c#方法
> C#在Javascript中获取表达式的结果

Type scriptType = Type.GetTypeFromCLSID(Guid.Parse("0E59F1D5-1FBE-11D0-8FF2-00A0D10038BC"));

dynamic obj = Activator.CreateInstance(scriptType, false);
obj.Language = "javascript";
obj.AddObject("MyClass",new JSAccessibleClass());

obj.Eval("MyClass.MsgBox('Hello World')"); //<--1
var result = obj.Eval("3+5"); //<--2


[ComVisible(true)]
public class JSAccessibleClass
{
    public void MsgBox(string s)
    {
        MessageBox.Show(s);
    }
}

标签:3d,raytracing,javascript,c-2
来源: https://codeday.me/bug/20190919/1812603.html