C#有没有办法执行存放在字符串中的命令? 比如:有一个函数:test(int n)有一个字符串变量:cCommand="test(10)"我想通过cCommand执行函数test(10),有没有办法啊?! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 去学Python吧,C#好象不具备这种动态特性 .net可以的一是用反射,查System.Reflection一是动态编译,查System.CodeDom, System.CodeDom.Compiler; //设你有一个myTestClass 类,其中有test(int n)方法,以下代码执行这个方法myTestClass obj= new myTestClass ();BindingFlags flags=BindingFlags.Public | BindingFlags.NonPublic |BindingFlags.IgnoreCase |BindingFlags.Instance | BindingFlags.Static |BindingFlags.InvokeMethod ;Type t=obj.GetType();object result = t.InvokeMember("test",flags,Type.DefaultBinder , obj, new object[]{10}); 用Microsoft Script Control来执行你的代码 可以的,好好学习一下这个空间System.CodeDom 其实我的目的是这样:--用于动态生成程序主菜单菜单项存放于一个数据表中,其中包括名称、父亲、点击该菜单项要执行的命令,这个命令就是用字符串的形式存放的,程序运行时需要执行这些命令,如果有类似VFP中的&宏替换命令就好了! 用FORCAL试试吧。通用字符串表达式编译运行库FORCAL V6.0 Betahttp://www3.skycn.com/soft/23045.htmlhttp://www2.skycn.com/soft/23045.htmlhttp://www1.skycn.com/soft/23045.html 其实我的目的是这样:--用于动态生成程序主菜单菜单项存放于一个数据表中,其中包括名称、父亲、点击该菜单项要执行的命令,这个命令就是用字符串的形式存放的,程序运行时需要执行这些命令,如果有类似VFP中的&宏替换命令就好了!//你这样设计,那还不如写个大的函数,根据命令字符串调用相应的函数好了 C# 设计计算器 如何移动一个文件夹下所有文件 Dev控件问题,求教,很急 Datagridview或dataview中的数据不能更新,显示数据类型引起的错误! C#中如何返回页面准确的响应时间,请高手赐教 c#解压缩问题(愚翁再进...呵呵...还是没有解决) Installshield 11.5的简单问题,参与有分 请问如何让一个应用程序运行在我窗口的一块区域内。 关于传窗口 dll 类库如何使用全局变量 ftp中如何列出当前目录下的所有文件和文件夹? .exe 能够从 MemoryStream 中启动吗?
一是用反射,查System.Reflection
一是动态编译,查System.CodeDom, System.CodeDom.Compiler;
BindingFlags flags=BindingFlags.Public | BindingFlags.NonPublic |BindingFlags.IgnoreCase |BindingFlags.Instance | BindingFlags.Static |BindingFlags.InvokeMethod ;Type t=obj.GetType();
object result = t.InvokeMember("test",flags,Type.DefaultBinder , obj, new object[]{10});
System.CodeDom
菜单项存放于一个数据表中,其中包括名称、父亲、点击该菜单项要执行的命令,
这个命令就是用字符串的形式存放的,程序运行时需要执行这些命令,
如果有类似VFP中的&宏替换命令就好了!
通用字符串表达式编译运行库FORCAL V6.0 Beta
http://www3.skycn.com/soft/23045.html
http://www2.skycn.com/soft/23045.html
http://www1.skycn.com/soft/23045.html
菜单项存放于一个数据表中,其中包括名称、父亲、点击该菜单项要执行的命令,
这个命令就是用字符串的形式存放的,程序运行时需要执行这些命令,
如果有类似VFP中的&宏替换命令就好了!
//
你这样设计,那还不如写个大的函数,根据命令字符串调用相应的函数好了