随笔分类 -  深入理解C#

记录自己在学习《深入理解C#》所做的笔记
24.C#LINQ TO XML(十二章12.3)
摘要:自己也写了那么多,但还有很多不懂,有点浮躁吧,但饭还是要吃啊,说说LINQ TO XML吧。 LINQ TO XML位于System.Xml.Linq程序集,并且大多数类型位于System.Xml.Linq命名空间。该命名空间下几乎所有类型都以X为前缀;普通DOM API中的Element对应... 阅读全文

posted @ 2015-01-28 22:46 a2htray 阅读(767) 评论(0) 推荐(0) 编辑

23.C#Queryable的扩展方法(十二章12.1-12.2)
摘要:今天要写的知识还真心有点绕呢,对于第一节的内容,其实是把原先在内存中的数据源,换成了从数据库中提取出来的数据。从代码的使用方式上是一样的,直接跳过,来看看IEnumerable和IQueryable的区别。 正如Enumerable类型包含着关于IEnumerable的扩展方法来实现LINQ标... 阅读全文

posted @ 2015-01-26 21:54 a2htray 阅读(2244) 评论(0) 推荐(0) 编辑

22.C#分组和查询延续及选择综合症(十一章11.6-11.7)
摘要:对于昨天的连接还有一个知识点没有说,那就是分组连接。是11.5中的内容,补上。 分组连接的格式:join 元素 in 序列 on 条件表达式 into 新的序列 内连接和分组连接之间的一个重要差异(即分组连接和普通分组之间的差异)是,对于分组连接来说,在左... 阅读全文

posted @ 2015-01-25 17:40 a2htray 阅读(938) 评论(0) 推荐(0) 编辑

21.C#序列过虑、排序、let子句和连接(十一章11.3-11.5)
摘要:哈哈,隔了一个星期,再怎么样都要发一篇,要多看书啊,书不能停~~~使用where子句进行过虑 where子句的语法格式如下:where 过虑表达式 例子:新建一个珠宝类,如下: 1 class Jewellery 2 { 3 /// 4 /// 珠宝类型 5 ///... 阅读全文

posted @ 2015-01-25 00:42 a2htray 阅读(1229) 评论(1) 推荐(0) 编辑

20.C#LINQ基础和简单使用(十一章11.1-11.2)
摘要:终于看到了第11章,之前虽然也有看过,但没有太仔细,在工作中也偶尔会使用,但不明白其中的原理,那现在就来讲讲LINQ,做一做书虫~~ 首先先了解下LINQ的三个要点:LINQ不能把非常复杂的查询表达式转换成一行代码使用LINQ不意味着你从此不再需要使用SQLLINQ不可能魔法般地让你成为架构天... 阅读全文

posted @ 2015-01-13 23:22 a2htray 阅读(1440) 评论(0) 推荐(0) 编辑

19.C#逐一介绍IEnumerable和IEnumerable<T>中的扩展方法(10.3-10.5)
摘要:今天没有太多的言语,只有代码,扩展方法多得太多,不能一一列完,书中一些,看多了也就会使用了。 1 //Enumerable.Range 返回起始到结束范围,是一个Enumrable类型 2 //Range方法并不会真的构造含有适当数字的列表,它只是在恰当的时间生成那些数,"just in tim... 阅读全文

posted @ 2015-01-12 23:03 a2htray 阅读(846) 评论(0) 推荐(0) 编辑

18.C#扩展方法(十章10.1-10.2)
摘要:今天的话题,我们来聊下扩展方法,自己也真心感叹自己的文笔,那叫一个惨啊,回顾写的文章,看着看着也忘记当时是怀着什么心态写的,哈哈,现代人真心是太随性了,可能也是太冷漠了,接着写的吧,总是会有帮助,也会有收获的。 扩展方法是从C#3开始出现在我们的眼前,它即有静态方法的优点,也使我们的代码更具可... 阅读全文

posted @ 2015-01-11 22:30 a2htray 阅读(1330) 评论(1) 推荐(1) 编辑

17.C#类型判断和重载决策(九章9.4)
摘要:今天来结束第九章,聊下我们经常忽略,但是编译器会帮我们完成的"类型判断和重载决策",理解编译器如何帮我们完成,相信在写代码时会更明确,避免一些编译出错,排查的问题,让我们开发更给力。 我们知道隐式类型的数组以及将方法组转换为委托类型都需要类型推断,但将方法组作为其它方法的参数进行转换时,会显得... 阅读全文

posted @ 2015-01-09 23:26 a2htray 阅读(529) 评论(0) 推荐(0) 编辑

16.C#初见Lambda表达式及表达式树(九章9.1-9.3)
摘要:在说明Lambda相关知识前,我们需要了解Lambda表达式常用于LINQ,那么我们来聊下LINQ。 LINQ的基本功能就是创建操作管道,以及这些操作需要的任何状态。这些操作表示了各种关于数据的逻辑:如何过滤、如何排序以及如何将不同的数据源连接在一起,等等。执行委托只是LINQ的众多能力之一。... 阅读全文

posted @ 2015-01-09 21:55 a2htray 阅读(1283) 评论(1) 推荐(2) 编辑

15.C#回顾及匿名类型(八章8.1-8.5)
摘要:今天的篇幅应该会很长,除了回顾前面学的一些,还有写一些关于匿名类型的相关知识,总体上对后续的学习很有帮助,学好了,后面更容易理解,不明白的,那就前面多翻几次,看多了总是会理解的。那么,进入正题吧。自动实现属性 我们的很多工作都是由编译器帮我们去完成,如我们要说的自动实现属性。使用自动实现属性时... 阅读全文

posted @ 2015-01-07 22:07 a2htray 阅读(608) 评论(0) 推荐(1) 编辑

14.C#属性访问器、命名空间、pragma指令(七章7.3-7.5)
摘要:看到一些零星的知识片,今天就用自己的理解说明下,也是因为太简单了,一下就过的,也是我们日常开发中常用。留下一个脚印,当书不在手上的,也能翻出来看看。说下属性访问器、命名空间和pragma指令。 属性访问器在01.C#数据类型、排序、过滤(一章1.1-1.2)有所提到,在C#3后可以使用修饰符去... 阅读全文

posted @ 2015-01-05 22:29 a2htray 阅读(445) 评论(0) 推荐(0) 编辑

13.C#分部类型和静态类(七章7.1-7.2)
摘要:再大的东西不去找,也就没了,再小的知识不去记,也就忘了。今天来写一写C#中的分部类型和静态工具类,这些两个概念可能在我们的日常使用过程中都使用过,可能大家对这些内容觉得这些不是应该有的东西嘛,那就来复习一下吧。 分部类型,个人理解是对同一事物在两个不同空间的描述,编译器将组织我们编写的在不同文... 阅读全文

posted @ 2015-01-04 22:21 a2htray 阅读(851) 评论(0) 推荐(1) 编辑

12.C#yield return和yield break及实际应用小例(六章6.2-6.4)
摘要:晚上好,各位。今天结合书中所讲和MSDN所查,聊下yield关键字,它是我们简化迭代器的关键。 如果你在语句中使用了yield关键字,则意味着它在其中出现的方法、运算符或get访问器是迭代器,通过使用yield定义迭代器,可在实现自定义集合类型的IEnumerable和IEnumerator模... 阅读全文

posted @ 2015-01-03 21:10 a2htray 阅读(1534) 评论(3) 推荐(0) 编辑

11.C#迭代器(六章6.1)
摘要:今天我们说下C#中的迭代器,首先引出一些关于迭代的概念,后面举出代码供大家讨论。 迭代器模式是行为模式的一种范例,行为模式是一种简化对象之间通信的一种设计模式。在.NET中使用IEnumerator和IEnumerable接口及它们的泛型等价物来封装的,如果一个类型实现了IEnumerable... 阅读全文

posted @ 2015-01-01 21:27 a2htray 阅读(1010) 评论(0) 推荐(0) 编辑

10.C#匿名函数的变量捕获(五章5.5)
摘要:首先感谢园友的指定,后续的文章一定会多码多想,出来的文章才有说服力。那今天接上篇我们来聊一聊匿名函数,对于匿名函数,我们知道使用delegate关键字,那我们来需要知道匿名函数在变量是的处理方式,先说两个术语,外部变量和捕获的外部变量,可以看出"捕获的外部变量=外部变量+捕获了",这个捕获顾名思... 阅读全文

posted @ 2014-12-30 21:18 a2htray 阅读(2154) 评论(2) 推荐(1) 编辑

09.C#委托转换和匿名方法(五章5.1-5.4)
摘要:今天将书中看的,自己想的写出来,供大家参考,不足之处请指正。进入正题。 在C#1中开发web form常常会遇到使用事件,为每个事件创建一个事件处理方法,在将方法赋予给事件中,会使用new EventHandler(),不同的事件有各种不同的EventHandler的派生类的实例,因为我这里使... 阅读全文

posted @ 2014-12-29 23:11 a2htray 阅读(1823) 评论(7) 推荐(0) 编辑

08.C# System.Nulable<T>和空引用操作符(四章4.2-4.4)
摘要:看了这3小节,发现作者讲得太详细了,把一个都在正常使用的用法说得太神密了,搞得不知是自己不懂作者的苦心,还是作者用意为之,这里给大家都简单讲下吧,太深的真心讲不下去。 1.可空类型的核心部分是System.Nullable,除了这个之外,还有由静态类System.Nullable提供的工具方法... 阅读全文

posted @ 2014-12-28 22:48 a2htray 阅读(423) 评论(0) 推荐(0) 编辑

07.C#泛型的限制和可空类型的简单说明(三章3.5-四章4.1)
摘要:自己在写文章的同时,也是在学习,对于书中的语句很多其实没有太好的理解,读一本书,要消化!!!三章都是讲泛型的,最后写一下泛型的限制,对于本章学习的完结,one end,one begin. 看下面的代码 1 public class Teacher 2 { 3 publ... 阅读全文

posted @ 2014-12-28 17:48 a2htray 阅读(1447) 评论(2) 推荐(0) 编辑

06.C#泛型约束和高级泛型(三章3.3-3.4)
摘要:吃午饭前继上篇泛型再写一篇关于泛型的文章,虽然总是被博客园移出首页,文章不精确实是大问题啊,会再接再厉的。进入正题。 先来说下泛型约束。当我们在使用泛型的时候通常会希望使用泛型实参时,参数能具备某一些特性,这时"泛型约束"来了,它能帮助我们在传入泛型参数,该参数要实现先前指定的约束。有4种约束... 阅读全文

posted @ 2014-12-28 12:36 a2htray 阅读(1472) 评论(7) 推荐(1) 编辑

05.C#泛型类型(三章3.1-3.2)
摘要:接下来说下C#中的泛型,熟练地使用泛型能提高代码的重用性,使用我们代码瞬间就高大上了,当然只有一点点,真的只有一点点,因为后面要学习和掌握的知识还有很多。先来看下一个使用Dictionary的例子。 1 static void Main(string[] args) 2 { 3 Dicti... 阅读全文

posted @ 2014-12-26 23:37 a2htray 阅读(549) 评论(2) 推荐(0) 编辑

导航