在C#中调用EVAL函数方法,通过字符串计算

Posted on 2017-05-22 17:03  云起  阅读(41)  评论(0)    收藏  举报  来源

一、用 MSScriptControl 在 C# 中执行 JavaScript 代码   javascript 中有个eval方法,用过的人都知道他的方便和强大之处。

在C#中,我们也可以通过Com组件来执行一段javascript代码。

下面的代码展示了如何用MSScriptControl 组件执行一段数学表达式:

            MSScriptControl.ScriptControlClass sc = new MSScriptControl.ScriptControlClass();
            sc.Language = "javascript";
            object obj = sc.Eval(" 1 + 2 * (3 + 4)");
            Console.WriteLine(obj);


要使用MSScriptControl需要引用com组件 Microsoft Script Control 1.0。

二、引用Microsoft.JScript与Microsoft.Vsa两个命名空间,并调用JScriptEvaluate方法实现

注:需加入Microsoft.JScript与Microsoft.Vsa两个命名空间。

        public static object Eval(string s)
        {
            Microsoft.JScript.Vsa.VsaEngine ve = Microsoft.JScript.Vsa.VsaEngine.CreateEngine();
            return Microsoft.JScript.Eval.JScriptEvaluate(s, ve);
        }


博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3