一、使用方法
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。
二、引用COM组件中可能出现的问题
如果引用Microsoft Script Control 1.0出现"VS2010中,无法嵌入互操作类型“……”,请改用适用的接口的解决方法“这种错误,那么请按下面的操作:(我的QQ 1508496092,大家有问题可以交流)
1、提示:在VS2010,在引用COM组件的时候,出现了无法嵌入互操作类型“……”,请改用适用的接口的错误提示。
2、解决方案:
选中项目中引入的dll,鼠标右键,选择属性,把“嵌入互操作类型”设置为False。
例如:
MSXML2.XMLHTTP _xmlhttp = new MSXML2.XMLHTTPClass();
提示无法嵌入互操作类型MSXML2.XMLHTTPClass请改用适用的接口