C# 动态生成类

System.Reflection.Emit命名空间提供了创建动态程序集的能力,动态程序集就是指在运行时创建的程序集。动态程序集能够被运行

或者保存到磁盘上。处于这个原因,许多的.net编译器使用了 System.Reflection.Emit来提供代码生成。在这片文章中,我们将探索下

System.Reflection.Emit命名空间,并构建一个简单的类库程序集


System.Reflection.Emit命名空间概览

类名:                      描述
AssemblyBuilder     用来动态创建程序集
ModuleBuilder     用来动态创建模块
TypeBuilder     用来动态创建类型
FieldBuilder     用来动态创建字段
ConstructorBuilder     用来动态创建构造函数
MethodBuilder     用来动态创建方法
ILGenerator     用来生成il指令到动态创建的方法或构造函数中
OpCodes     包含il指令的类
Label (struct)     用来定义标签(用于il分支跳转)

另外还有一些还有一些其他的类,本文并没有用到。
类名:                        描述:
CustomAttributeBuilder     用来创建自定义特性
EnumBuilder     用来创建枚举
EventBuilder     用来创建事件
LocalBuilder     用来创建方法和构造函数用到的局部变量
MethodRental     用来交换方法的实现
ParameterBuilder     用来创建方法和构造函数用到的参数
PropertyBuilder     用来创建类型的属性
SignatureHelper     用来创建字段,方法,属性和局部签名
UnmanagedMarshal     用来描述托管到非托管类型的封送 

http://www.cnblogs.com/xhan/archive/2010/03/15/1686642.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值