让Javascript运行在C#上 [Update3] 支持mono 支持ClrWrapper

作者:V君 发布于:2014-9-7 3:41 Sunday 分类:折腾手记

一提到在C#上运行Javascript, 很多人都会直接想到用 Microsoft ScriptControl 吧.

很遗憾这货不能跨平台, 于是又是一阵找啊找, 找到两个, 他们分别是 IronJSjint

(后来还发现了 Jurassic 但已经没力去试了)

上阵尝试之后, V君这次选择了 jint, 因为IronJS 在传递绑定对象时略为蛋疼.

上吧!

首先添加引用 不管你是nuget还是下载程序集来引用还是下载源码编译之后引用, 给我添加好就了

然后 coding 吧!

JsValue就是上一篇文章说的绑定对象, 还是不太好使, 像异常对象只能JSON..咱有牛顿!

不过能让js在C#上跑; 能用markup在服务端生成 HTML 已经很爽了吧 乂D

点击查看原图

Update: 

尝试放到mono@树莓派上, 结果失败了. 查到原因是jint只有.net4.0, mono 稳定版还没到4,

因此运行不能.. 

然而 Jurassic 是 2.0, 必须抽空看看了, 蛮期待的...


Update2: 

IronJS 尽管能分别在mono和windows上跑, 但是不集成JSON对象功能,使用解析库

json.js/json2.js/json3.js会有问题


是时候试试 Jurassic 了, 你看看我发现了 什么 乂目


Update3:

好高兴啊! 上了 monoJurassic 之后, 在windows和树莓跑同一份二进制文件效果一致了!

之前折腾的JavaScript解析引擎都弱爆了, 要么只能在windows, 要么绑定对象不给力

这下泥看看Jurassic的ClrInstanceTypeWrapper, 直接把简单对象扔进js环境了 哈哈!

目前还有点问题就是Warp不了Exception对象.. 闲了再研究研究 _(:з」∠)_

标签: 软件开发 javascript C# mono

引用地址:

发表评论:

Powered by emlog 去你妹的备案 sitemap