摘要: 一、何谓、何时、为何、如何 1、何谓动态类型 C#是一门静态类型语言。编译器知道代码中表达式的类型,知道任何类型中可用的成员。它应用了相当复杂的规则来决定哪个成员应该在何时使用。这包括了重载决策;在(动态类型出现)之前的唯一途径是根据对象在执行时的类型,来选择虚方法的实现。决定使用哪个成员的过程称为 阅读全文
posted @ 2020-11-01 21:10 Jscroop 阅读(518) 评论(0) 推荐(0) 编辑
摘要: 一、用IQueryable和IQueryProvider进行转换 在LINQ to SQL中的所有查询表达式中,数据源都是Table。不过,如果你看一下Table,你就会发现它没有Where、Select和Join方法,或任何其他的标准查询操作符。但是,它利用了和LINQ to Objects同样的 阅读全文
posted @ 2020-10-31 16:26 Jscroop 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 一、LINQ介绍 1、LINQ中的基础概念 1.1、序列 序列通过IEnumerable和IEnumerable接口进行封装,它就像数据项的传送带——你每次只能获取它们一个,直到你不再想获取数据,或者序列中没有数据了。序列和其他集合数据结构(比如列表和数组)之间最大的区别就是,当你从序列读取数据的时 阅读全文
posted @ 2020-10-31 16:24 Jscroop 阅读(177) 评论(0) 推荐(0) 编辑
摘要: C# 3引入了扩展方法的概念,它既有静态方法的优点,又使调用它们的代码的可读性得到了提高。使用扩展方法,可以像调用实例方法那样调用静态方法。 一、扩展方法的语法 1、声明扩展方法 并不是任何方法都能作为扩展方法使用——它必须具有以下特征: 它必须在一个非嵌套的、非泛型的静态类中(所以必须是一个静态方 阅读全文
posted @ 2020-10-28 22:21 Jscroop 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 一、 作为委托的Lambda表达式 Lambda表达式都可以看做是C# 2的匿名方法的一种演变。匿名方法能做的几乎一切事情都可以用Lambda表达式来完成。与匿名方法相似,Lambda表达式有特殊的转换规则:表达式的类型本身并非委托类型,但它可以通过多种方式隐式或显式地转换成一个委托实例。匿名函数这 阅读全文
posted @ 2020-10-28 22:19 Jscroop 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 迭代器模式是行为模式的一种范例,行为模式是一种简化对象之间通信的设计模式。这是一种非常易于理解和使用的模式。实际上,它允许你访问一个数据项序列中的所有元素,而无须关心序列是什么类型——数组、列表、链表或任何其他类型。它能非常有效地构建出一个数据管道,经过一系列不同的转换或过滤后再从管道的另一端出来。 阅读全文
posted @ 2020-10-25 20:53 Jscroop 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 一、向笨拙的委托语法说拜拜 在C# 1中,我们一般是先写好一连串事件处理程序,然后到处写new EventHandler,这显得很多余、很凌乱,因为事件本身已经指定了它要使用哪个委托类型。有时,我们写的方法是如此简单,以至于它们的实现比签名都要短。而这一切只是由于委托需要以方法的形式来执行代码。这样 阅读全文
posted @ 2020-10-25 20:51 Jscroop 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 一、没有值怎么办 以DateTime为例,购物系统中存在发货日期,但在下单未发货的情况下,发货日期应当可为空,但编译器是不允许DateTime变量设置为空的。在C#2之后我们可以使用可空类型,但在C#1中又是如何处理的? 1、为什么值类型不能为空 对于引用变量来说,其值是一个引用;对于值类型来说,值 阅读全文
posted @ 2020-10-24 11:53 Jscroop 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 泛型是C#2最重要的新特性,同时也是.NET2.0的CLR中最重要的新特性,它实现了类型和方法的参数化(可作为参数传递)。它们增强了性能,是代码更富表现力,并且将大量安全检查从执行时转移到了编译时进行。 1、为什么需要泛型 1、使用如ArrayList这类为不同数据类型而设计的类型时,每次forea 阅读全文
posted @ 2020-10-24 11:52 Jscroop 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 一、发布与订阅 Redis的发布与订阅功能由PUBLISH、SUBSCRIBE、PSUBSCRIBE等命令组成。通过执行SUBSCRIBE命令,客户端可以订阅一个或多个频道,从而成为这些频道的订阅者(subscriber):每当有其他客户端向被订阅的频道发送消息时,频道的订阅者都会接收到这条消息。 阅读全文
posted @ 2020-07-18 18:10 Jscroop 阅读(233) 评论(0) 推荐(0) 编辑
//小火箭