您的位置:首页 > 编程语言 > C#

在C#中如何调用EVAL函数方法

2012-09-18 13:58 399 查看
我测试了如下的两种方法都可行。

一、用 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两个命名空间。

/// <summary>

/// 四则混合运算

/// </summary>

/// <param name= "s "> 计算表达式 </param>

/// <returns> 计算结果 </returns>

/// <example>

/// <code>

/// object x = Mathx.Eval( "1+2*2-6/2 ");

/// </code>

/// </example>

public static object Eval(string s)

{

Microsoft.JScript.Vsa.VsaEngine ve = Microsoft.JScript.Vsa.VsaEngine.CreateEngine();

return Microsoft.JScript.Eval.JScriptEvaluate(s, ve);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐