zoukankan      html  css  js  c++  java
  • IronJS与CSScript

    CSScript确实是个不错的东西,填补了WSH没有C#的空白,最重要的是大大扩展了脚本的功能,以前用JS写WSH的脚本,功能实在是弱了点,想把文件存成UTF-8,还不得不用ADOBD.Stream,着实不方便。

    有了CSScript,以后写点编译用的简单脚本就方便了,用起来比Lua爽多了(当然,Lua本来就不是干这个的)。

    CSScript本质上是将C#在线编译,然后执行,如果要执行一些运行时动态生成的代码,就没有这么方便了,毕竟C#不是动态语言,每一行代码都得编译成assembly才能运行。如果将CSScript和IronJS结合在一起,那所有问题就都解决了。

     1 using System;
     2 using Microsoft.CSharp;
     3 using IronJS;
     4 
     5 class Script
     6 {
     7     static void Main(string[] args)
     8     {
     9         var ctx = new IronJS.Hosting.CSharp.Context();
    10         dynamic hello = ctx.Execute("(function (){ return {msg:'你好,IronJS'};})();");
    11         Console.Out.WriteLine(hello.msg);
    12         Console.Out.WriteLine(hello.noexist);
    13         Console.ReadKey(true);
    14     }
    15 }

    注意,必须添加 “Microsoft.CSharp”,必须将IronJS.dll放到csscript能找到的地方,否则会发生编译错误!有关代码的其他解释,参见初探IronJS

    最后,感谢Rain.兄告诉我CSScript这个好东西

  • 相关阅读:
    Bit Manipulation
    218. The Skyline Problem
    Template : Two Pointers & Hash -> String process
    239. Sliding Window Maximum
    159. Longest Substring with At Most Two Distinct Characters
    3. Longest Substring Without Repeating Characters
    137. Single Number II
    142. Linked List Cycle II
    41. First Missing Positive
    260. Single Number III
  • 原文地址:https://www.cnblogs.com/windtail/p/2818830.html
Copyright © 2011-2022 走看看