本文实例讲述了C#执行js动态编译的方法。分享给大家供大家参考。具体实现方法如下:
代码如下:usingSystem;
usingSystem.CodeDom.Compiler;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Reflection;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespacewebpro
{
publicclassJScripta
{
privatestaticreadonlyCodeDomProvider_provider=newMicrosoft.JScript.JScriptCodeProvider();
privatestaticType_evaluateType;
privateconststringscriptStr=@”packagefhs
{
publicclassMyJs
{
publicstaticfunctiontest1(paramr1)
{
varretString = paramr1+’是无敌的!’;
returnretString;
}
}
}”;
publicstaticobjectJScriptRun(stringjsMethodName,object[]testParams)
{
//编译的参数
CompilerParametersparameters=newCompilerParameters();
parameters.GenerateInMemory=true;
CompilerResultsresults=_provider.CompileAssemblyFromSource(parameters,scriptStr);
Assemblyassembly=results.CompiledAssembly;
//动态编译脚本中的内容
_evaluateType=assembly.GetType(“fhs.MyJs”);
//执行指定的方法并传参数
objectretObj=_evaluateType.InvokeMember(jsMethodName,BindingFlags.InvokeMethod,
null,null,testParams);
returnretObj;
}
}
}
希望本文所述对大家的C#程序设计有所帮助。
您可能感兴趣的文章:c#动态编译执行对象方法示例运用映射机制创建对象使用C#动态编译代码和执行的代码C#动态编译、动态执行、动态调试C#动态编译并执行字符串样例
C++实现顺序表的常用操作(插入删出查找输出)
C++实现顺序表的方法
上述就是C#学习教程:C#执行js动态编译的方法分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/905996.html