第1章 灵活的编程方法
1.1 反射的定义
1.2 类型术语
1.3 绑定
1.3.1 早期(静态)绑定
1.3.2 运行时绑定
1.3.3 面向对象
1.3.4 后期绑定
1.4 元数据
1.5 访问.NET元数据
1.6 .NET中的反射
1.6.1 分析对象
1.6.2 操纵对象
1.6.3 创建对象
1.7 小结
第2章 程序集、对象和类型
2.1 程序集元数据
2.2 类型元数据
2.2.1 检索类型
2.2.2 Type类成员
2.3 类成员元数据
2.3.1 MemberInfo类
2.3.2 FieldInfo类
2.3.3 PropertyInfo类
2.3.4 MethodBas类
2.3.5 MethodInfo类
2.3.6 ConstructorInfo类
2.3.7 EventInfo类
2.3.8 ParameterInfo类
2.4 小结
第3章 使用对象
3.1 为什么要用反射调用成员
3.2 动态调用成员
3.2.1 利用Info类调用类成员
3.2.2 用InvokeMember()方法调用类成员
3.3 反射调用的代价
3.4 小结
第4章 创建对象
4.1 动态程序集加载
4.1.1 创建程序集引用
4.1.2 动态加载程序集的方法
4.1.3 动态实例化类
4.2 抽象工厂模式
4.3 小结
第5章 属性
5.1 了解属性
5.1.1 使用属性的语法
5.1.2 测试标准属性的数据类型
5.2 使用预定义.NET属性
5.2.1 属性类定义
5.2.2 利用属性控制编译器
5.2.3 定义并使用程序集属性
5.3 定义新的自定义属性
5.4 小结
第6章 .NET组件模型
6.1 .NET组件模型
6.1.1 组件、控件和类
6.1.2 利用组件模型使用反射
6.2 创建新组件
6.2.1 定义组件类
6.2.2 在容器中存储组件
6.2.3 在Visual Studio.NET中使用组件
6.2.4 为组件定义属性和事件
6.2.5 为组件定义转换器类
6.2.6 测试Employee组件类
6.3 小结
附录A 支持、勘误表和代码下载
A.1 如何下载本书的示例代码
A.2 勘误表
A.3 E-Mail支持
A.4 p2p.wrox.com站点