网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > C# > 正文
动态代码的使用(反射和动态生成类)
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/14
下载{$ArticleTitle}原创论文样式

    在软件开发尤其是框架和底层开发时,为了更灵活的控制代码,常常需要进行一些动态的操作。比如根据用户的输入等动态的调用类中的方法或者根据数据库表结 构、用户要求动态的生成一些类,然后再动态的调用类中的方法。当然使用这些方式时会对性能有一点影响,具体使用过程中可以根据实际情况来定,不过一般的 B/S开发中主要的瓶颈还是在数据库操作和网速方面,这点影响应该可以忽略的

    一、反射的使用
    可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性。
    需要使用的命名空间:System.Reflection
    反射的作用很多,下面的例子主要是看一下怎么动态的调用类中的方法。
    例子类

    class ReflTest1
    {
        private string _prop1;

        public string Prop1
        {
            get { return _prop1; }
            set { _prop1 = value; }
        }

        public void Write1(string strText)
        {
            Console.WriteLine("111111111:" + strText);
        }
        public void Write2(string strText)
        {
            Console.WriteLine("222222222:" + strText);
        }
        public void MyWrite(string strText)
        {
            Console.WriteLine("3333333333:" + strText);
        }
    }


这个例子中提供了三个方法和一个属性,下面的代码来动态的调用它们:

            string strText = "abcd";

            BindingFlags flags = (BindingFlags.NonPublic | BindingFlags.Public |
                BindingFlags.Static | BindingFlags.Instance | BindingFlags.DeclaredOnly);

            Type t = typeof(ReflTest1);
       &n

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号