C#的LINQ to Object】的更多相关文章

.NET面试题系列目录 名言警句 "C# 3.0所有特性的提出都是更好地为LINQ服务的" - Learning Hard LINQ是Language Integrated Query(语言集成查询)的缩写,读音和单词link相同.不要读成“lin-Q”. LINQ to Object将查询语句转换为委托.LINQ to Entity将查询语句转换为表达式树,然后再转换为SQL. LINQ的好处:强类型,相比SQL语句它更面向对象,对于所有的数据库给出了统一的操作方式. LINQ的一些…
投影是指在将序列中的元素转换为一个自定义形式的操作.投影操作符Select和SelectMany用于选择出赋予了适当功能的值.SelectMany操作符可以处理多个集合. LINQ表达式语法: 1. Select Select操作符对单个序列或集合中的值进行投影. 1.1 原型定义 public static IEnumerable<TResult> Select<TSource, TResult>(this IEnumerable<TSource> source, F…
生成操作符从现有序列值中创建新的序列. 1. Empty  Empty操作符返回一个指定类型的空集. 1>. 原型定义 public static IEnumerable<TResult> Empty<TResult>(); 2>. 示例 var q = Enumerable.Empty<int>(); Console.WriteLine(q == null); Console.WriteLine(q.Count()); False 2. Range Ran…
转换是指将输入对象的类型转变为序列的动作. 1. AsEnumerable AsEnumerable操作符将查询的输入以IEnumberable(T)类型返回. 2. Cast Cast操作符将IEnumberable集合中的元素转换为指定的类型,当Cast运算符无法将源类型转换为目标类型时将抛出InvalidCastException. from T e in s <=> from e in s.Cast<T>() 1>. 原型定义 public static IEnume…
量词操作符返回一个Boolean值,指示序列中是否存在部分或全部元素符号指定条件.LINQ中量词操作符包括:All.Any和Contains. 1. All All操作符判定在集合中是否所有的值都满足指定的条件.返回值是一个Boolean值.如果所有值都满足条件则返回true,否则返回false. 1>. 原型定义 public static bool All<TSource>(this IEnumerable<TSource> source, Func<TSource…
http://www.cnblogs.com/terryzh/archive/2012/11/10/2763538.html LinQ To Object 基本用法 inq的基本语法:var result = from item in container select item; linq获取数据子集: var result = from item in container where booleanexpression select item; Select用法: var selectedIt…
#region SQO (标准查询运算符) 方法 #region Where() Find() FindAll() FirstOrDefault()等方法 static void c01where() { var list = GetPigList(); //1.0 获取当前list集合中的符合条件的第一条数据 list.Sort((p, n) => p.Age - n.Age); ); // pig.Say(); //2.0 first 获取当前list集合中的符合条件的第一条数据,如果没有找…
LINQ想必大家都不陌生了,它的出现使得我们的代码变得更短.更优雅了.至于LINQ是什么,Linq to object这类的扩展方法到底做了些什么.我们使用的EF是如何实现的(如何解析Expression).我都将一一为大家分享下我的理解.如果有说得不对的地方,也请大家指出.下面进入正题 大家先将代码左上角的using System.Linq去掉 当我们想对一个集合的数据进行筛选的时候,我们以前会这样做 static void Main(string[] args) {     List<int…
大家都知道Linq既可以用来查询数据库对象(我这里指的是Entity FrameWork里的Model对象),也可以用来查询内存中的IEnumerable对象. 两者单独查询时都不会出现什么问题,不过混合在一起时(一般是用关键字来join连接),要注意的地方就多着了. 情形1:Linq to Object 连接(join) Linq to Entity 我们首先来看这段代码:(注意:Linq代码里是把内存中的数据代码,也就是Linq to object放在join前面,数据库的数据代码放在joi…
1.Where 操作符用于限定输入集合中的元素,将符合条件的元素组织声称一个序列结果.2.Select  操作符用于根据输入序列中的元素创建相应的输出序列中的元素,输出序列中的元素类型可以与输入序列中的元素类型相同,也可以不同.下面来看看Select方法的原型.3.SelectMany 操作符用于根据输入序列中的每一个元素,在输出序列中创建相应的零个或者多个元素,与Select操作符不同,Select操作符会根据输入序列中的每一个元素创建一个对应的输出序列元素,而SelectMany操作符可以创…