码迷,mamicode.com
首页 > 其他好文 > 详细

通过字符串动态创建类对象

时间:2015-09-29 14:45:59      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:

通过字符串动态创建类对象

 

      功能的需求是  不需要使用IOC 框架 来对创建指定对象。

           .NET 中  要想动态的 创建对象   做耦合  好像只能做到 将类生成DLL 后  然后 加载DLL 接着创建对象。

           JAVA 当个类文件 就可以运行。  

     希望做到  当读一个   .class  或者 .TXT 就可以  动态创建类对象  那多好啊!!! 还可以将 类文件 以字符串的形式写到 数据库中  通过数据库来 创建类对象。

 

然后就各种百度 谷歌 贴吧等  找有没相关的 解决方案    还好  找到了  。 不藏着 分享出来  

   代码很简单: 

            CSharpCodeProvider p = new CSharpCodeProvider();
            CompilerParameters param = new CompilerParameters();

            string s = "public class AAA{ public string name;}";

            CompilerResults rel = p.CompileAssemblyFromSource(param, s);

            Type t = rel.CompiledAssembly.GetType("AAA");

            object o = t.GetConstructor(System.Type.EmptyTypes).Invoke(null);

            string sdc = t.GetField("name").GetValue(o).ToString();

            Console.WriteLine(t.GetField("name").GetValue(o).ToString());

技术分享

 

希望 哪位大神 有更高效 的 方式  可以告诉本人一下哈 。。 

 

通过字符串动态创建类对象

标签:

原文地址:http://www.cnblogs.com/atliwen/p/4846126.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!