复习linq

linq的英文是language integrated query。其中query的意思就是疑问或者计算机用语就是从资料库中提取信息的要求,可以理解为查询的意思。那么它翻译过来的话就是集成查询语言。其命名空间是:System.Linq。

它的基本写法如下:

from 一个临时的变量 in 一个实现了IEnumeralbe<T>接口的对象。

where 条件

order by 条件

group by 条件

select 上面那个临时的变量

然后也许有人会问,为什么不是以select开头,而是以from开头的。我只是记得以前微软老以前的linq是select写在前面的,后面发现那样写不好,就改成了先写from,大概原因,好像是因为智能感知会很麻烦。具体情况我也不大清楚。我是记得这个用法,也就未求甚解了。有兴趣的博友,如果知道原因,可在下面留言告之。对于以上的那个对象需要是实现了IEnumerable<T>接口的对象才可以的。比如,说数组,我们在VS上敲上Array然后光标置之其的F12转到定义会看到这个图,那么就说明数组才可以用LINQ的。

小举一例,现在一个Int数组,要求显示出其中的奇数。用linq做。

这里呢,就先用fro循环和if条件写一下,其图与结果如下:

这个签于过于简单,也就不多说了。下面呢就是用linq做的,其图如下:

稍微注意一下的就是:要将整个linq表达式ToList()一下,也就是将之变成一个集合,for循环才好遍历之,另外就是既然是集合了就不在找length了,需要点出来的是Count.另外,linq是可以做到延迟加载的或者说是延迟显示的,也就是我linq表达式写完了,但它并没有真正的去执行,如上面的代码,而是在我将之ToList()之后,它才会去查的。这样可以减少查询的次数。

然后,也就是这些很浅的一些关于linq的知识了。今天就到这里了。

复习linq的更多相关文章

  1. C#复习笔记(4)--C#3:革新写代码的方式(查询表达式和LINQ to object(下))

    查询表达式和LINQ to object(下) 接下来我们要研究的大部分都会涉及到透明标识符 let子句和透明标识符 let子句不过是引入了一个新的范围变量.他的值是基于其他范围变量的.let 标识符 ...

  2. C#基础:LINQ 查询函数整理

    1.LINQ 函数   1.1.查询结果过滤 :where() Enumerable.Where() 是LINQ 中使用最多的函数,大多数都要针对集合对象进行过滤,因此Where()在LINQ 的操作 ...

  3. linq学习笔记

    最近在学习linq的一些基础知识,看了c#高级编程及阅读了园子内部几篇优秀的博文,有所体会,感觉应该记录下来,作为以后复习使用.都是一些最基础的知识,大致分为三个部分:linq预备知识:linq查询: ...

  4. EF(Linq)框架使用过程中的小技巧汇总

    这篇博客总结本人在实际项目中遇到的一些关于EF或者Linq的问题,作为以后复习的笔记或者供后来人参考(遇到问题便更新). 目录 技巧1: DbFunctions.TruncateTime()的使用 技 ...

  5. C#复习、面向对象阶段开始

    C#复习:在控制台程序中使用结构体.集合,完成下列要求项目要求:一.连续输入5个学生的信息,每个学生都有以下4个内容:1.序号 - 根据输入的顺序自动生成,不需要手动填写,如输入第一个学生的序号是1, ...

  6. 转linq中的Single()、First()、Take(1) LINQ 标准的查询操作符 排序 orderby、thenby、Take

    Single():操作一个集合,同时强要求只有一个对象匹配,并返回这一个. First():操作一个集合,可以有多个对象匹配,但是只返回第一个. Take(1):操作一个集合,可以有对个对象匹配,单只 ...

  7. Linq之Expression高级篇(常用表达式类型)

    目录 写在前面 系列文章 变量表达式 常量表达式 条件表达式 赋值表达式 二元运算符表达式 一元运算符表达式 循环表达式 块表达式 总结 写在前面 首先回顾一下上篇文章的内容,上篇文章介绍了表达式树的 ...

  8. Linq之隐式类型、自动属性、初始化器、匿名类

    目录 写在前面 系列文章 隐式类型 自动属性 初始化器 匿名类 总结 写在前面 上篇文章是本系列的小插曲,也是在项目中遇到,觉得有必要总结一下,就顺手写在了博客中,也希望能帮到一些朋友.本文将继续介绍 ...

  9. c#中的linq一

    c#中的linq 测试数据: using System; using System.Collections.Generic; using System.Linq; using System.Text; ...

随机推荐

  1. 【CSS3】---结构性伪类选择器-root+not+empty+target

    结构性伪类选择器—root :root选择器,从字面上我们就可以很清楚的理解是根选择器,他的意思就是匹配元素E所在文档的根元素.在HTML文档中,根元素始终是<html>. 示例演示: 通 ...

  2. Oracle 日期查询

    转自:http://hi.baidu.com/fengboy_7334/blog/item/b0aa60035f36a1e809fa935d.html 例如:select * from c where ...

  3. Echarts 使用遇到的问题

    1.在使用ECharts的数据视图时,单击打开数据视图如下,当单击close按钮时,如果当前图像区域包含在一个<from></from>标签中,则会刷整个新页面, 去掉< ...

  4. POJ1064

    #include <iostream> #include <iomanip> #include <cmath> using namespace std; int N ...

  5. 原生js学习笔记2

    知识点: 1:关于this指向问题,如果有函数a(),直接a()那么this指向window,new a()指向函数本身. 2:关于null和undefined.两者如果用“==”则认为两者是相等的, ...

  6. jQuery简介<思维导图>

    jQuery是继prototype之后有一个优秀的Javascript库,它由John Resig创建于2006年1月.它简化了遍历HTML文档.操作DOM.处理事件.执行动画和Ajax的操作.它独特 ...

  7. SQL学习备忘

    1.按照拼音首字母的正序或倒序排序 SELECT CREATOR_REALNAME FROM tableName ORDER BY NLSSORT(CREATOR_REALNAME, 'NLS_SOR ...

  8. linux命令后台运行[转]

    有两种方式:    1. command & : 后台运行,你关掉终端会停止运行    2. nohup command & : 后台运行,你关掉终端也会继续运行 一. 简介     ...

  9. HashSet和LinkedHashSet特点.

    1)::HashSet-------(内部为HashCode表数据结构)---(保证数据唯一,但不保证数据有序) 不对数据进行排序,只是通过hashCode和equal对数据进行相同判定,如果相同就不 ...

  10. js中字符和数组一些基本算法题

    最近在刷 fcc的题,跟升级打怪一样,一关一关的过,还挺吸引我的.今天抽时间把 Basic Algorithm Scritping  这部分题做了,根据一些提示,还是比较简单的.有些题的处理方式 方法 ...