5

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

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

4

2 回答 2

9

这是一个例子:

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

// cstest.cs - 编译为库

using System;
namespace MyNamespace
{
    public class Foo
    {
        public string Bar()
        {
            return "Hello JS";
        }
    }
}

// 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);
    }
};
于 2012-02-27T20:02:22.123 回答
0

您需要做的是将您的 JScript.NET 代码转换为 C#。像这样的东西。

于 2012-02-27T19:59:08.287 回答