如何从JScript.net调用C#?

sev*_*niw 5 c# jscript.net

我读到,对于最新的Java,Javascript on Java可以轻松调用或导入java包.在最新的.NET中,JScript.net可以轻松调用C#函数吗?

有关详细信息,我不会询问编译的JScript.net代码,而是关于在脚本引擎上运行的未编译的JScript.net字符串代码.

Dmi*_*avy 8

这是一个例子:

1)带有简单调用的CS文件和返回字符串的方法.2)使用eval调用CS方法的js文件.

// cstest.cs - 编译为库

using System;
namespace MyNamespace
{
    public class Foo
    {
        public string Bar()
        {
            return "Hello JS";
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

// test.js - 编译为exe //添加对cstest.dll的引用//命令行编译jsc/t:exe /r:cstest.dll test.js

import MyNamespace;

var o : JSApp = new JSApp();
o.DoEval();

class JSApp
{
    function DoEval()
    {
        var f : Foo;
        var s : String
       eval("f = new Foo;");
       eval("s = f.Bar();"); // call Foo.Bar
       print(s);
    }
};
Run Code Online (Sandbox Code Playgroud)