Linq的概念解析

简介: 在http://www.cnblogs.com/2018/category/262512.html 这些文章中提到 WCF Data Service和WCF RIA Service的使用,在实际的使用过程中会经常的使用linq,为此把这些概念解析一下。

http://www.cnblogs.com/2018/category/262512.html 这些文章中提到

WCF Data Service和WCF RIA Service的使用,在实际的使用过程中会经常的使用linq,为此把这些概念解析一下。

序列

IEnumerable<T> ,这个类型是关键,LINQ的标准查询操作符都需要使用该类型对象作为参数

查询操作符

是指在LINQ查询上下文事业能够的、一系列扩展方法的集合,是实现linq的最重要的一类元素

预定义的标准查询操作符:

过滤

OfType, Where

投影

Select, SelectMany

分区

Skip, SkipWhile, Take, TakeWhile

连接

GroupJoin, Join

串联

Concat

排序

OrderBy, OrderByDescending, Reverse, ThenBy, ThenByDescending

分组

GroupBy, ToLookup

集合

Distinct, Except, Intersect, Union

转换

AsEnumerable, AsQueryable, Cast, ToArray, ToDictionary, ToList

等同

SequenceEqual

元素

ElementAt, ElementAtOrDefault, First, FirstOrDefault, Last,

生成

LastOrDefault, Single, SingleOrDefault

数量

DefaultIfEmpty, Empty, Range, Repeat

聚集

All, Any, Contains

查询表达式

查询表达式提供了一种继承于语言中的、用于编写查询语句的语法。编译器自动将其转换为对标准查询操作符的调用。

查询本操作符和查询表达是对应关系

查询操作符

查询表达式(C#)

All

Any

Average

Cast

使用显式类型的范围变量,如 from int i in numbers

Count

Distinct

GroupBy

group … by
group … by … into …

GroupJoin

join … in … on …
equals … into…

Join

join … in … on …
equals …

LongCount

Max

Min

OrderBy

orderby

OrderByDescending

orderby … descending

Select

select

SelectMany

多个Frrom子句

Skip

SkipWhile

Sum

Take

TakeWhile

ThenBy

orderby …, …

ThenByDescending

orderby …, …descending

Where

where

两种写法相同效果的例子

查询操作符

查询表达式

SampleData.Books

.Where(book => book.Title == "Funny Stories")

.OrderBy(book => book.Title)

.Select(book => new {book.Title, book.Price});

from book in SampleData.Books

where book.Title == "Funny Stories"

orderby book.Title

select new {book.Title, book.Price};

根据情况和语言中的对应限定关系选择使用。

相关文章
|
2月前
|
开发框架 容器
SAP UI5 控件的 aggregation 的概念解析
SAP UI5 控件的 aggregation 的概念解析
36 0
|
3月前
|
应用服务中间件 Windows
129. SAP ABAP Update Process(更新进程)的概念和设计动机解析
129. SAP ABAP Update Process(更新进程)的概念和设计动机解析
37 1
|
3月前
|
应用服务中间件 调度 数据库
SAP ABAP Update Process(更新进程)的概念和设计动机解析试读版
SAP ABAP Update Process(更新进程)的概念和设计动机解析试读版
21 0
|
30天前
|
Python
继承概念深度解析:代码视角下的科普之旅
继承概念深度解析:代码视角下的科普之旅
6 0
|
1月前
|
存储 编解码 算法
音视频编程ffmepg中的关键术语与概念:深度解析与实践(二)
音视频编程ffmepg中的关键术语与概念:深度解析与实践
59 0
|
1月前
|
存储 编解码 网络协议
音视频编程ffmepg中的关键术语与概念:深度解析与实践(一)
音视频编程ffmepg中的关键术语与概念:深度解析与实践
72 0
|
1月前
|
数据库 数据库管理
构建信息蓝图:概念模型与E-R图的技术解析
构建信息蓝图:概念模型与E-R图的技术解析
29 0
|
2月前
|
并行计算 API 计算机视觉
Python多线程与多进程:概念、区别及应用场景解析
Python多线程与多进程:概念、区别及应用场景解析
|
3月前
|
监控 安全 数据安全/隐私保护
SAP RBAM (Role-Based Authorization Management) 概念解析
SAP RBAM (Role-Based Authorization Management) 概念解析
32 0
|
4月前
|
安全 应用服务中间件 nginx
Docker基础概念解析:镜像、容器、仓库
当谈到容器化技术时,Docker往往是第一个被提及的工具。Docker的基础概念涵盖了镜像、容器和仓库,它们是理解和使用Docker的关键要素。在这篇文章中,将深入探讨这些概念,并提供更丰富的示例代码,帮助大家更好地理解和应用这些概念。

推荐镜像

更多