C# 可以在.net framework中执行javascript代码吗?

C# 可以在.net framework中执行javascript代码吗?,c#,javascript,.net,C#,Javascript,.net,我希望能够在运行.net环境的服务器端执行JavaScript。 那么,如何才能做到这一点呢? 我主要需要文本处理功能,我将输入一个字符串并从JavaScript代码中返回一个字符串。 不需要窗口交互。是的,您可以使用几个JS引擎,和基于.NET,但您也可以与其他浏览器(如Chrome浏览器中的V8或IE中的ActiveScript)进行交互 编辑:五年后,.NET自带的JS引擎有些落后(还没有一个支持ES6,IronJS似乎已被放弃),但我们现在也有了开源引擎,它不难与现成的包装器集成并在.N

我希望能够在运行.net环境的服务器端执行JavaScript。
那么,如何才能做到这一点呢? 我主要需要文本处理功能,我将输入一个字符串并从JavaScript代码中返回一个字符串。

不需要窗口交互。

是的,您可以使用几个JS引擎,和基于.NET,但您也可以与其他浏览器(如Chrome浏览器中的V8或IE中的ActiveScript)进行交互

编辑:五年后,.NET自带的JS引擎有些落后(还没有一个支持ES6,IronJS似乎已被放弃),但我们现在也有了开源引擎,它不难与现成的包装器集成并在.NET中使用

此外,允许通过公共接口从.NET代码中使用几乎任何现有的JS引擎,因此切换引擎不需要更改代码。

您可以编写一个文件并将其编译成程序集,然后像其他程序集一样使用该程序集

例如:

package Your.Desired.Package.Name {
    Class SomeClassName {
        public static function doSomething(foo) }
            var bar;

            // Fairly normal JavaScript code here

            if (foo.match(/sometest/)) {
                // Do something
            }
            else {
                // Do something else
            }
        }
    }
}
除了
结构之外,JScript.Net中的代码本质上是JavaScript。如果你想作恶,你甚至有
eval
。:-)

然后将其编译成如下程序集:

jsc /target:library TheFileName.js

…它在
TheFileName.dll

中生成和组装。Net非常适合文本处理。您是否需要一些只有JavaScript才能提供的特定内容?我支持@Marcelocontos的评论。离开.Net进行文本处理有什么好处?这似乎是一件奇怪的事情。你到底想完成什么?我需要测试JavaScript代码,以确保其正确执行。这是一种自动的方式。有很多javascript单元测试框架。有关于如何与chrome或ie javascript引擎交互的链接吗?看起来Jint是最好的选择:)很高兴你在今年回来更新。现在要检查脉轮核心。谢谢