随笔分类 - C#开发
摘要:程序集,简单来说就是一个以公共语言运行库(CLR)为宿主的,版本化的,自描述的二进制文件,虽然现实中的.NET程序集与Win32二进制文件的的扩展名相同(*.exe或*.dll),但是两者的内部构成几乎完全不同。C#程序集具有如下有点:使用命名空间确定类型边界;可版本化;是自描述的(不需要访问注册表来定位);是可配置的。
阅读全文
摘要:LINQ(语言级集成查询)的意图是提供一种统一且对称的方式,让程序员在广义的数据上得到和操作数据。通过使用LINQ,我们能够在C#编程语言内直接创建被称为查询表达式的实体。这些查询表达式是基于许多查询运算符的,而且有意设计成类似SQL表达式的,但它可以被用来与多种数据交互,而不局限于关系数据库。具体来说,LINQ允许查询表达式以统一的方式来操作任何通过扩展方法直接或间接实现了 IEnumerable接口的对象,关系数据库,Dataset或XML文档。
阅读全文
摘要:《C#与.NET高级程序设计》读书笔记:索引器,指针类型,隐式类型,扩展方法,分部方法,匿名类型等
阅读全文
摘要:《C#与.NET高级程序设计》读书笔记:delegate,event,Lambda表达式。
阅读全文
摘要:《C#与.NET高级程序设计》读书笔记-接口,集合与泛型
阅读全文
摘要:C#的垃圾回收机制不是基于引用计数的,而是基于对象是否可到达。该机制的运作过程是:CLR 会建立一个对象图,代表堆上可达的每一个对象,如果在一次垃圾回收过程中,某个对象在该对象图上没有root(即没有任何其他对象依赖于它),则对象是不可达对象,会被标记为垃圾,从而会被终结,从内存中清除。 微软的回收算法使用对象代,用于终结对象的辅助线程和专门承载大对象的托管堆进行优化以提高垃圾回收机制的效率。
阅读全文