适用于.NET的Javascript Interpreter

时间:2011-03-21 20:03:02

标签: javascript c# windows-phone-7 compact-framework

我有一个场景需要在.NET应用程序中运行Javascript解释器。这将在Windows Phone 7上运行,因此它需要符合Compact Framework标准,因为它可能不会预先打包为Windows Phone源提供帮助。

许可证也是一个问题。我们查看了使用MIT许可证下的Jint,但它使用的是Antlr,它是BSD许可证(据我所知,Jint因不重新分发Antlr版权和条件而处于违规状态)。还有其他选择吗?

6 个答案:

答案 0 :(得分:5)

这是一些努力,但我实际上已经能够改进Jint以使用WP7。有一些反射很容易被重写(主要用于编组从JS到.NET对象的调用),还有一些需要修补的错误,但最终它似乎正在起作用。

希望我有空余时间将这些内容提交给Jint项目。

答案 1 :(得分:4)

http://jurassic.codeplex.com

虽然我不知道它是否符合Compact Framework。

答案 2 :(得分:2)

您可以进行JavaScript调用using the web browser control。它不需要额外的库。你需要做一些黑客攻击,使控件不可见,检索数据等,但它应该做的。

或者您可以尝试这个项目:

  

Javascript .NET整合   谷歌的V8 Javascript引擎和   将其公开给CLI环境。   Javascript .NET编译(在运行时)   并直接从中执行脚本   .NET代码。它允许CLI对象   直接暴露和操纵   执行的Javascript。

答案 3 :(得分:1)

自从提出这个问题以来,侏罗纪已被释放。这是一个.NET Javascript解释器,可以在完整的CLR和电话上工作(或者他们声称)。

我还没有开始迁移到它,所以我不知道它是否有效,但是这里有任何感兴趣的人。

答案 4 :(得分:0)

正如Bryan所说,如果你愿意,你可以在网络浏览器控件中运行你的Javascript - 如果你确实需要运行JS,我认为这可能是你唯一的选择。

目前正在努力开发IronJS - https://github.com/fholm/IronJS - 但我不认为这很快就会为WP7做好准备 - 我也不希望它在那里完全发挥作用。

如果你可以切换到另一种脚本语言 - Ruby - 那么IronRuby可以在手机上使用(参见iron7 pics and videos可以用它做什么)。

答案 5 :(得分:0)

你应该尝试: https://github.com/gatapia/js.net

我没试过WP7但可能有用吗?