【问题标题】:How to Evaluate JavaScript code from .NetCore如何从 .Net Core 评估 JavaScript 代码
【发布时间】:2020-12-15 03:17:33
【问题描述】:

我需要评估 .netcore 2.1 项目中的 Javascript 代码

    string vRule = "var input = arguments[0]; if (!input) return \"\"; if(input.length != 7) return \"a fixed string length of 7 is required\"; else return \"\"";
    string spResponse = "sdfsd23";

    string errorText =
        _jscriptEval.EvalToString(new List<object>
            {
                "var args = new Array('" + spResponse +
                "');\r\n validateRule(args);\r\n function validateRule(arguments){" + vRule +
                "}\r\n"
            });

【问题讨论】:

  • 嗨,@Pratik Bhoir,请提供您的 java 脚本代码的逻辑。从您的代码中,很难理解,然后我们可以尝试为您转换。
  • Jint Packaged 按预期正常工作。

标签: asp.net-core asp.net-core-mvc asp.net-core-webapi asp.net-core-2.1


【解决方案1】:

您可以使用Jint。 Jint 实现了 ECMA 5.1 规范,可用于任何 .NET 实现(Xamarin、.NET Framework、.NET Core)。只需使用 NuGet 包,不依赖于其他东西 - 它是一个 .dll,你就完成了! 只需将您的 javascript 代码转换为函数并像这样运行它(这只是一个示例,不是您的实现):

  var engine = new Engine()
    .Execute("function MyFunction(a, b) { return a + b; }")
    ;

engine.Invoke("MyFunction", 1, 2); // -> 3

你在https://github.com/sebastienros/jint有更多的解释和例子

【讨论】:

  • 谢谢,@d-a,我正在寻找一些类似的包,但找不到。
猜你喜欢
  • 2012-10-25
  • 2016-12-23
  • 2013-03-25
  • 2011-01-25
  • 2018-07-29
  • 1970-01-01
  • 2021-08-25
  • 2015-03-11
  • 2018-11-05
相关资源
最近更新 更多