如何将字符串里的类转化成实例化的类 谢谢!例如:有一个字符串"AdminLoad(1,1,2)"里面有类我想转化成实例类:AdminLoad(1,1,2)不知道怎么操作,请赐教! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 意思还不是太明白,用CodeDOM,CSharpCodeProvider可以动态的生成代码、编译代码, 有这样的类在字符串中"AdminLoad(1,1,2)",现在我在的程序有这样的一个类函数,AdminLoad(1,1,2)我想将字符串中的类可以转化成直接调用函数了. 用反射可以实现,先把类所在的assembly找到,然后用反射创建类的实例,就可以调用了:string str = "AdminLoad(1,1,2)";string methodName = str.Substring(0, str.IndexOf("("));string[] params = str.Substring(str.IndexOf("(") + 1, str.IndexOf(")") - str.IndexOf("(") - 1).Split(",");Assembly assembly = Assembly.LoadFile(AdminLoad方法所在的assembly的文件名);Type mytype = assembly.GetType(AdminLoad方法所在的类的名字);object myobject = Activator.CreateInstance(mytype);mytype.InvokeMember(methodName,BindingFlags.InvokeMethod,null,myobject,new object[]{Int32.Parse(params[0]), Int32.Parse(params[1]), Int32.Parse(params[2])}); 一般都用active.createinstance方法去msdn看看这个方法吧 %CD%F5是王字,是通过什么来加密的 <%$是啥意思? 关于C#的SQL语句中的SELECT...... 开始后要自动执行几个程序,想写到一个bat文件中执行这些程序,要怎样做? 高价求网络投票程序!!具体价格面议 C#利用System.Threading.Timer实现多线程中遇到的问题,请求帮助! dataGrid的最左边的那列叫什么(有箭头的),?怎样将他隐藏? ???C#读写xml?? 怎样才能做一个类似于瑞星的助手小狮子那样的助手呢? WPF,请问这样的UserControl该怎么创建? 谁介绍下下面2中代码写法的特点 或者说什么区别 跪求!解决方案![200]另开帖补够!
string str = "AdminLoad(1,1,2)";
string methodName = str.Substring(0, str.IndexOf("("));
string[] params = str.Substring(str.IndexOf("(") + 1, str.IndexOf(")") - str.IndexOf("(") - 1).Split(",");Assembly assembly = Assembly.LoadFile(AdminLoad方法所在的assembly的文件名);
Type mytype = assembly.GetType(AdminLoad方法所在的类的名字);
object myobject = Activator.CreateInstance(mytype);
mytype.InvokeMember(methodName,BindingFlags.InvokeMethod,null,myobject,new object[]{Int32.Parse(params[0]), Int32.Parse(params[1]), Int32.Parse(params[2])});
去msdn看看这个方法吧