悬赏分:50 浏览:387 次
请问怎么将字符串转化成可执行语句?
如:
string code="DB.shownewsfunction(2,0,1,14,0,20,200,100,0,1,0,1401,0,0,0,0,0,0)";
怎么把code转化成可执行的语句,也就是要执行DB.shownewsfunction(2,0,1,14,0,20,200,100,0,1,0,1401,0,0,0,0,0,0)
|
请参考这篇博客,有关dot net动态编译的
http://u2usoft.cnblogs.com/articles/332762.html 楼上正解。 用反射技术 你需要操作IL Emit就是你需要的~查查MSDN吧 //以下三行相当于:{Console.Writeln("I'm "+ targetMethod.Name +"ing");} ilGen.Emit(OpCodes.Ldstr,"I'm "+ targetMethod.Name +"ing"); ilGen.Emit(OpCodes.Call,typeof(Console).GetMethod("WriteLine",new Type[]{typeof(String)})); ilGen.Emit(OpCodes.Ret); http://www.moon-soft.com/doc/23252.htm http://www.cnblogs.com/wsky/archive/2008/05/21/1204379.html 我觉的如果要从文本解析成可执行的。 就是个脚本引擎,可以从编译原理的词法分析,语法分析方面入手。 自己定义规则,写的好还是蛮强大,而且灵活,呵呵 如果有可能,请使用Javascript/JScript.net语言. 可以直接这样来: Eval("DB.shownewsfunction(2,0,1,14,0,20,200,100,0,1,0,1401,0,0,0,0,0,0)"). |