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};

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

posted @   2012  阅读(2344)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示