怎样在C#中执行Javascript代码

  作者:bea

javascript中有个eval方法,用过的人都知道他的方便和强大之处。 在C#中,我们也可以通过Com组件来执行一段javascript代码。 下面的代码展示了如何用MSScriptControl 组件执行一段数学表达式: MSScriptControl.ScriptControlClasssc=newMSScriptControl.ScriptControlClass(); sc.Language="javascript"; obje

javascript中有个eval方法,用过的人都知道他的方便和强大之处。

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

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

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

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

还有一种方法:

//csc.exenoname1.cs/r:C:WINDOWSMicrosoft.NETFrameworkv1.1.4322Microsoft.JScript.dll //注:需加入Microsoft.JScript与Microsoft.Vsa两个命名空间。 publicclassClass1 { staticvoidMain(string[]args) { System.Console.WriteLine("HelloWorld"); stringExpression="varresult:int=0;result==1?"成功":"失败""; Microsoft.JScript.Vsa.VsaEngineve=Microsoft.JScript.Vsa.VsaEngine.CreateEngine(); Console.WriteLine(Microsoft.JScript.Eval.JScriptEvaluate(Expression,ve)); } } 有用  |  无用

猜你喜欢