Csharp/C#教程:使用javascript进行自定义目的分享


使用javascript进行自定义目的

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

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

  1. Javascript调用ac#方法
  2. 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); } } 

您可以利用许多独立的JavaScript实现来实现此目的:

这是一个指向JavaScript上的stackoverflow信息页面的链接,其中列出了许多这些实现的顶部: https : //stackoverflow.com/tags/javascript/info

虽然可以使用JavaScript作为.Net应用程序的脚本,但它并不是最受欢迎的选择。 如果您可以选择其他语言 – IronPython或LUA.Net可能是您的选择,您将获得更好的支持。 我最近在类似问题中列出了几个链接: 使用带有npc方法的类编写要由c#执行的npc脚本 。

否则,JavaScript.Net(.Net框架的一部分)或其他显式.Net或.Net绑定的实现将用作脚本语言。

上述就是C#学习教程:使用javascript进行自定义目的分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注---计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/961426.html

(0)
上一篇 2021年11月26日
下一篇 2021年11月26日

精彩推荐