据说这是.NET 3.5SP1中的一个增强,LET关键字目前我看起来就是对子查询的一个别名

static void Main(string[] args)
{
    int[] numbers = new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

//传统下的子查询做法
    var query = from num in numbers
                select num * (from n in numbers
                              where n % 2 == 0
                              select n).Count();

//使用LET关键字的做法
    //var query = from num in numbers
    //            let evenNumbers = from n in numbers
    //                              where n % 2 == 0
    //                              select n
    //            select num * evenNumbers.Count();

foreach (var item in query)
    {
        Console.WriteLine(item);
    }

Console.Read();

}

我们一看就会知道,用了LET之后,层次感会更好一些,代码更易于阅读

转载于:https://www.cnblogs.com/chenxizhang/archive/2009/04/29/1446017.html

LINQ中的Let关键字相关推荐

  1. linq中let关键字学习

    linq中let关键字就是对子查询的一个别名,let子句用于在查询中添加一个新的局部变量,使其在后面的查询中可见. linq中let关键字实例 1.传统下的子查询与LET关键字的区别 C# 代码    ...

  2. 了解 C# “.NET研究”4 中的 Dynamic 关键字

    dynamic 关键字和动态语言运行时 (DLR) 是 C# 4 和 Microsoft .NET Framework 4 中的重大新增功能. 这些功能在宣布时就引起了人们的极大兴趣,并伴随着许多疑问 ...

  3. C# 中的var关键字

    C# 中的var关键字 var 是3.5新出的一个定义变量的类型 其实也就是弱化类型的定义 VAR可代替任何类型 编译器会根据上下文来判断你到底是想用什么类型的 至于什么情况下用到VAR 我想就是你无 ...

  4. C#8.0: 在 LINQ 中支持异步的 IAsyncEnumerableT接口

    C# 8.0中,提供了一种新的IAsyncEnumerable<T>接口,在对集合进行迭代时,支持异步操作.比如在读取文本中的多行字符串时,如果读取每行字符串的时候使用同步方法,那么会导致 ...

  5. 转载Linq中GroupBy方法的使用总结

    Group在SQL经常使用,通常是对一个字段或者多个字段分组,求其总和,均值等. Linq中的Groupby方法也有这种功能.具体实现看代码: 假设有如下的一个数据集: public class St ...

  6. LINQ中的Lambda表达式

    Lambda Expressions in LINQ 在第12章,我提到可以用lambda表达式定义内联的委托定义.在如下表达式中: customer => customer.FirstName ...

  7. C# 4 中的 Dynamic 关键字

    转自 https://kb.cnblogs.com/page/92947/ dynamic 关键字和动态语言运行时 (DLR) 是 C# 4 和 Microsoft .NET Framework 4 ...

  8. C++中的const关键字(zz)

    [补充]mutable关键字 有时我们希望类的数据成员即使在const成员函数中,依然是可以修改的,这时就可以把它们声明为mutable来实现.这样的应用,比如记录各种操作的调用次数,这时,即使在co ...

  9. 面试季,Java中的static关键字解析

    点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面 ...

最新文章

  1. AWK用法详解(转载)
  2. 机载雷达发展简史:从蝙蝠到机载相控阵
  3. redirect和forward的区别
  4. 编程之美2.9 斐波那契数列
  5. 任务数量超过线程池负荷了怎么办?拒绝策略安排起来!
  6. SAP UI5 调试模式标志位的持久化原理 - local storage
  7. django-restframework使用
  8. php - preg_match
  9. 基于easyX的颜色侵略小游戏
  10. STM32F407+CubeMX+Keil上移植RTX5实时系统
  11. Wireshark 抓包小例子
  12. 【CS229】向量化
  13. [POI2007]ODW-Weights(贪心)
  14. AlphaGo是如何实现的
  15. 黑马Python教程实战项目--美多商城(一)
  16. 本地Blast2GO安装,及其数据库更新和导入数据中断的解决方案
  17. RV1126--qt实现rtmp拉流(转换本机rtsp)
  18. VSPD V9版(Virtual Serial Port Driver 9.0)
  19. 基于Flutter的仿微信聊天应用
  20. 手机开热点显示互联网无服务器,win10热点无互联网连接的具体解决办法【图文】...

热门文章

  1. 【洛谷P1186】玛丽卡(断边+最短路)
  2. [HNOI2015]接水果
  3. 144. Binary Tree Preorder Traversal
  4. Android开发中完全退出程序的三种方法
  5. Eclipse CDT中EOF输入的解决方法
  6. 轻松掌握ISO8583报文协议
  7. 垃圾回收器机制(二):快速解读GC算法之标记-清除,复制及标记整理-算法
  8. 关于虚继承(在钻石继承体系中,一定要用虚继承!)
  9. 算法---------前 K 个高频元素(Java版本)
  10. 在ddms 里面查看data/data里面的东西 不显示data/data