上一页 1 ··· 50 51 52 53 54 55 56 57 58 ··· 60 下一页
1.Attribute,属性(特性),又名元数据,自定义属性。编译期会解释属性,并将对应的标志插入到IL中。 AOP:面向方面的编程,以声明性的方式控制属性。 .NET已有的属性类: 1)Serializable: 仅可用于Class/Struct/Enum/Delegate 2)NotSerialized:仅用于字段 3)AssemblyVersion:仅用于程序... Read More
posted @ 2007-08-31 11:52 包建强 Views(666) Comments(1) Diggs(1)
第一部分 动态程序集加载 1.创建程序集引用:分2种 全面引用:以引用程序集名称,版本,文化以及公钥标记的方式,进行加载——首选,避免DLL Hell。静态引用的程序总是全部引用 部分引用:只使用程序集名称,而忽略其他所有属性,进行加载。 .Net如何找到要加载的DLL: 首先,运行时要分析应用程序配置文件,包括以下3个级别: ... Read More
posted @ 2007-08-31 11:51 包建强 Views(602) Comments(0) Diggs(0)
本章是上一章的继续,再获取到对象类型后,接下来做的事情。 第一部分 动态调用成员——调用方法,检索或更改属性,以及字段 方法1:利用Info类调用类成员 1.用MethodInfo类调用方法: object[] Invoke(object obj, Object[] parameters) 其中,第1个参数obj,是对象的实例... Read More
posted @ 2007-08-31 11:50 包建强 Views(1088) Comments(0) Diggs(0)
第一部分:程序集(System.Reflection.Assembly) 1.获取Assembly对象 方法1:调用Assembly的以下4个静态方法Get...()之一: GetAssembly(Type t) GetCallingAssembly() ——返回调用当前方法的方法所在的程序集 GetExecutingAssembly() —... Read More
posted @ 2007-08-31 11:45 包建强 Views(1286) Comments(3) Diggs(0)
1.反射的定义: 反射是在运行时动态分析,操纵和创建对象的机制。——3个功能,依次在以下章节分析。 反射要访问存储于.NET程序集中的元数据,以发现原始代码方面的信息。 2.反射的后期绑定区别于C#中的后期绑定。 C#中采用override方法进行后期绑定——编译期间确定使用那个方法。 反射没有这个限制,直到运行期间才会确定。反射还可以绑定程序集和类型,根据元数据... Read More
posted @ 2007-08-31 11:33 包建强 Views(909) Comments(1) Diggs(0)
Object o1 = new Object(); Object o2 = new B(); Object o3 = new D(); Object o4 = o3; B b1 = new B(); B b2 = new D(); D d1 =... Read More
posted @ 2007-08-05 22:55 包建强 Views(866) Comments(0) Diggs(0)
1.Delegate是类型安全的,也就是说,在编译期可以检测出错误;而与之相似的Reflection是类型不安全的。 Delegate是方法地址的指针,而且不区分static和instance方法。 Delegate是定义在Class之外的,这个平级的Class中包括Delegate要使用的方法。 2.Delegate允许引用类型的协变(covariance)和反协变(contra-... Read More
posted @ 2007-08-05 11:54 包建强 Views(1799) Comments(1) Diggs(0)
今天去www.sharpdevelop.com转了一圈,找到了这个东西,不错不错! # Develop change list SharpDevelop 2.2.0.2595 (6/28/2007) Additional and improved templates Boo support updated to version 0.7.8 NUnit sup... Read More
posted @ 2007-08-01 09:44 包建强 Views(1459) Comments(0) Diggs(0)
本篇分析Core\Services的PropertyService类,该服务是用于所有需要属性持久的地方。因为涉及到属性持久化的存储位置,所以类中存在5个静态常量,很重要: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> readonl... Read More
posted @ 2007-07-28 00:06 包建强 Views(1041) Comments(0) Diggs(0)
属性结构位于Core/Property,先看属性系统的工作方式,如图:IXmlCovartable接口提供了对象与XML节点互相转换的方法,可以认为是序列化的另一种实现方式。据作者说,这两个方法的实现要比序列化速度快很多。IProperties是主接口,应用程序其他部分都通过调用该接口进行工作。它提供了对属性的读写操作,以及一个自身对象的复制方法。DefaultProperties是IProper... Read More
posted @ 2007-07-25 08:28 包建强 Views(1157) Comments(2) Diggs(0)
上一页 1 ··· 50 51 52 53 54 55 56 57 58 ··· 60 下一页