是否有可能仅在部署到之前使用托管动态语言(例如javascript在Silverlight应用程序中)无服务器端编译客户端?我在这里寻找任何代码的0服务器端编译 - 希望整个应用程序在浏览器中100%编译/解释。我浏览了DLR specs,但我没有注意到这样的选择。
答案 0 :(得分:1)
技术上答案是肯定的。 Silverlight是一种纯粹的客户端技术,可以在插件中运行简化的安全CLR。Silverlight API是可访问的脚本语言,包括Javascript,F#,IronPython和IronRuby。
然而,您是否应该取得进展是值得怀疑的,因为似乎没有任何社区或支持。此外,Silverlight处于支持模式,你必须考虑是否值得在这样一个灯光昏暗的角落投入你的精力。
Jimmy Schementi here进行了一些技术演示。另请查看DLR Wikipedia条目中的references。旧的silverlight论坛过去常常有一个专门用于Javascript和Silverlight的子论坛。现在已经不见了。如果您决定朝着这个方向前进,请将其视为警告。
几年前,有一个SDK包含一个工作的IronPython和IronRuby与Silverlight,一些演示和构建脚本。查找Chiron,它将脚本和xaml打包成一个.xap(zip)文件。这是在DLR中。有一些很酷的例子证明了在Silverlight插件中运行客户端的python和ruby解释器。
或者,您可以使用键入的语言开发大部分应用程序,然后通过Javascript桥接器将其部分内容暴露给javascript。 MSDN对如何执行此操作有一些简短的说明。