LINQ 101——约束、投影、排序】的更多相关文章

什么是LINQ:LINQ 是一组 .NET Framework 扩展模块集合,内含语言集成查询.集合以及转换操作.它使用查询的本机语言语法来扩展 C# 和 Visual Basic,并提供利用这些功能的类库. 什么是LINQ 101:是学习LINQ的不错的资源(下载地址:http://pan.baidu.com/s/1ntE74NJ),当初我也是看LINQ101来熟悉LINQ的.现把我当时的学习笔记整理出来 Restriction (约束)Projection (投影)Ordering (排序)…
一.Grouping(分组) 例1:对于0-9数按被3整除的结果分组 代码: static void Linq1() { , , , , , , , , , }; var numModBy3 = from n in numbers group n by n % into g select new { Remainder = g.Key, Numbers = g }; foreach (var g in numModBy3) { Console.Write("被3整除余 {0} : ",…
第二章 约束和排序数据 1. 在 emp 表中选择工资介于 1500 到 2500 的员工的信息:                注意:使用 between 下边界 and 上边界时,条件包括边界值: SCOTT@ORCL>select * from emp where sal between 1500 and 2500 2. 在emp表中选择位于20,30 部门的员工的信息: SCOTT@ORCL>select *from emp where deptno in (20,30);      …
通过orderby关键字,LINQ可以实现升序和降序排序.LINQ还支持次要排序. LINQ默认的排序是升序排序,如果你想使用降序排序,就要使用descending关键字. static void Main(string[] args) { var dicts = new Dictionary<int, string>(); dicts.Add(, "Jack"); dicts.Add(, "Tom"); dicts.Add(, "Tod&qu…
投影是指在将序列中的元素转换为一个自定义形式的操作.投影操作符Select和SelectMany用于选择出赋予了适当功能的值.SelectMany操作符可以处理多个集合. LINQ表达式语法: 1. Select Select操作符对单个序列或集合中的值进行投影. 1.1 原型定义 public static IEnumerable<TResult> Select<TSource, TResult>(this IEnumerable<TSource> source, F…
在Linq中排序操作可以按照一个或多个关键字对序列进行排序.其中第一个排序关键字为主要关键字,第二个排序关键字为次要关键字.Linq排序操作共包含以下5个基本的操作. 1.OrderBy操作,根据排序关键字对序列进行升序排序 2.OrderByDescending操作,根据排序关键字对序列进行降序排序 3.ThenBy操作,对次要关键字进行升序排序 4.ThenByDescending操作,对次要关键字进行降序排序 5.Reverse操作,将序列中的元素进行反转 那么下面我们就逐一来分析一下每个…
前两天看QQ群里面,一位朋友问的问题,说在linq中怎么实现动态排序呢,自己想了半天,没有头绪,网上找了下相关的资料,看了下,收益挺多,记录下来. 之前我们没有如果不知道动态排序的方法的话,我们可能会这样写 [code lang="csharp"] case SortFields.Price: if (rules == SortRules.ESC) { result = result.OrderBy(s => s.Price); } else { result = result.…
在做搜索和排序的时候,往往是前台传过来的字符串做条件,参数的数量还不定,这就需要用拼sql语句一样拼linq语句.而linq语句又是强类型的,不能用字符串拼出来. 现在好了,有个开源的linq扩展方法类,支持用字符串拼linq语句.   以下是转载:   LINQ (language integrated query) is one of the new features provided with VS 2008 and .NET 3.5.  LINQ makes the concept of…
----------------------------------------------------.对基础类型排序 方法一: 调用sort方法,如果需要降序,进行反转: List<int> list = new List<int>();    list.Sort();// 升序排序    list.Reverse();// 反转顺序 方法二: 使用lambda表达式,在前面加个负号就是降序了 List<int> list= new List<int>(…
Limit 方法limit():用于读取指定数量的文档 语法: db.集合名称.find().limit(NUMBER) 参数NUMBER表示要获取文档的条数 如果没有指定参数则显示集合中的所有文档 例1:查询2条学生信息 db.stu.find().limit(2) skip 方法skip():用于跳过指定数量的文档 语法: db.集合名称.find().skip(NUMBER) 参数NUMBER表示跳过的记录条数,默认值为0 例2:查询从第3条开始的学生信息 db.stu.find().sk…