Linq Coding -- Part Three [Let子句]
在查询表达式中,存储子表达式的结果有时很有用,这样可以在随后的子句中使用。可以使用 let 关键字完成这一工作,该关键字可以创建一个新的范围变量,并且用您提供的表达式的结果初始化该变量。一旦用值初始化了该范围变量,它就不能用于存储其他值。但如果该范围变量存储的是可查询的类型,则可以对其进行查询。
2 {
3 #region Interface Members
4
5 public void invoke()
6 {
7 String[] strs = { "A penny saved is a penny earned.",
8 "The early bird catches the worm.",
9 "The pen is mightier than the sword." };
10
11 //使查询只能对范围变量 word 调用一次 ToLower。如果不使用 let,则必须在 where 子句的每个谓词中调用 ToLower。
12 var earlyBirdQuery = from sentence in strs
13 let words = sentence.Split(' ') //用空格分隔strs数组
14 from word in words
15 let w = word.ToLower() //把数组元素进行小写操作
16 where w[0] == 't'
17 select word;
18
19 foreach (var v in earlyBirdQuery)
20 {
21 Console.WriteLine("\"{0}\" starts with a vowel", v);
22 }
23
24 Console.WriteLine("Press any key to exit.");
25 Console.ReadKey();
26 }
27
28 #endregion
29 }
LINQ Coding 目录
- Linq Coding -- Part One
- Linq Coding -- Part Two[标准查询运算符]
- Linq Coding -- Part Three [Let子句]
- Linq Coding -- Part Four[Concat应用]
- Linq Coding -- Part Five (Join之内部联接查询)
- Linq Coding -- Part Six (Join之分组联接)
- Linq Coding -- Part Seven (Join之左外部联接、DefaultIfEmpty、GroupJoin)
转载于:https://www.cnblogs.com/RuiLei/archive/2008/02/26/1082600.html
Linq Coding -- Part Three [Let子句]相关推荐
- Linq Coding -- Part Eight (Equals Topic)
首先说一下同等联接,大家一般都知道Join Clause执行的其实是同等联接. 那是什么是同等联接呢? 同等联接:就是只能在两个键(外键.内键)之间的相等关系Match.而其他类型的比较(比如 ...
- Linq学习from let where子句
using System; using System.Collections.Generic; using System.Linq; using System.Text; /*from let whe ...
- LINQ之查询语法—let子句
let子句主要有2种用法: 1)创建一个可以用于查询自身的可枚举类型: 2)存储一个查询出来的临时变量以方便用于后续操作. let子句也比较简单,我们通过一个例子来认识它. 我们要从一组句子中,找到所 ...
- Linq之select子句
在Linq中select子句用来指定查询结果的类型和表现形式.Linq查询要么以select子句结尾,要么以group子句结尾. 1 List<UserBaseInfo> users = ...
- 从LINQ开始之LINQ to Objects(上)
LINQ概述 LINQ,语言集成查询(Language Integrated Query),它允许使用C#或VB代码以查询数据库相同的方式来操作不同的数据源. LINQ体系结构 从上图可以看出,LIN ...
- [深入学习C#]LINQ查询表达式详解(1)——基本语法、使用扩展方法和Lambda表达式简化LINQ查询
此文章非原创,转载自诗人江湖老,原文地址 在Git上下载源码 在工程中我们少不了要定义类或者结构去储存数据,这些数据将被临时地储存在内存中,现在我们想要对其完成一些类似于查找.过滤等等常见的任务的时候 ...
- .net core精彩实例分享 -- LINQ
文章目录 介绍 具体案例 将对象转为字典集合 将原始序列进行分组 按员工所属部门 DefaultIfEmpty方法的作用 将分组后的序列重新排序 使用并行LINQ 总结 介绍 随着.net core越 ...
- LINQ(隐式表达式、lambda 表达式)
.NET 中一项突破性的创新是 LINQ( Language Integrated Query,语言集成查询),这组语言扩展让你能够不必离开舒适的 C# 语言执行查询. LINQ 定义了用于构建查询表 ...
- APS.NET MVC + EF (01)---Linq和Lambda表达式
APS.NET MVC + EF (01)---Linq和Lambda表达式 1.1 Linq介绍 LINQ全称 Language Integrated Query(语言集成查询).为我们提供一种统一 ...
最新文章
- 导航,头部,CSS基础
- 用户变量和系统变量的区别是什么?
- Shell多线程操作及线程数控制实例
- C# 9 新特性 —— 增强的模式匹配
- (四)十大经典排序算法(动画图解,代码完全)
- Mongodb Replica Configure
- Spring Boot笔记-设置拦截器为false时返回的Body
- Linux 系统安装 AutoFs 挂载服务
- 小程序中canvas绘制网络图片
- conda 虚拟环境内安装git_用anaconda创建的虚拟环境安装FALCON
- 通讯录(结尾附全部代码)
- 二叉树遍历之递归与非递归遍历
- pycharm的python_stubs
- ems数字货币运营模式,emstoken是什么,emstoken骗局揭秘
- 倪光南:网络不安全要挨打 不用县县都建数据中心
- 方程组在原点附近解matlab,前置血管常发生于A.副胎盘B.胎盘血管瘤C.双叶胎盘D.帆状胎盘...
- C语言和python实现——公鸡5文钱一只, 母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡
- contiki学习笔记(十二)UIPTCP/IP协议
- 使用这些方式让你的ipad拥有更长的使用寿命
- Unity3D之矩阵运用
热门文章
- go build和go install的区别
- 11.C程序内存空间分配
- 3._FILE_和_LINE_
- Android --- 199 198开头手机号正则表达式无效
- android编程获取网络和wifi状态及调用网络设置界面,Android编程获取网络连接状态(3G/Wifi)及调用网络配置界面 - Android平台开发技术 - 博客园...
- python读取一个图像_从图像处理python的文件中读取多个图像
- python opencv resize函数_Python OpenCV中的resize()函数的使用
- 上海市提出IDC建设指导意见,新建IDC限制PUE1.3以下
- 一秒钟世界上会发生多少事_1秒钟世界上会发生多少事?答案超乎你的想象……...
- apache2.4.6支不支持jsp_Spring Boot中文参考指南(2.1.6)50、Kotlin 支持