zoukankan      html  css  js  c++  java
  • LINQ基础——LET子句

    LINQ基础——LET子句

    一、简介

    用于创建查询自身的范围变量,let语句是重命名。let位于第一个from和select语句之间。

    二、案例

    案例一:

    将字符串数组中的两句英文语句中所有的元音字母打头的单词输出到控制台

    string[] strings ={
                     "I am a new Student.",
                     "You are a talent"
                     };
    
    var query = from sentences in strings
                let words = sentences.Split(' ')
                from word in words
                let w = word.ToLower()
                where w[0] == 'a' || w[0] == 'e' || w[0] == 'i' || w[0] == 'o' || 
                         w[0] == 'u'
                select word;
    
    foreach (var word in query)
    {
        Console.Write(word + ",");
    }

    分析:

    首先遍历字符串数组中的每个字符串,用let子句创建查询自身的范围变量words,并调用Split(' ')方法,将每个字符串中以空格分割为单词存入words变量中,然后再次使用let子句创建查询自身的范围变量word,并调用ToLower()方法,将每个单词都变为小写,最后筛选出首字母为元音的单词进行返回。

    案例二:

    下面let语句是重命名。let位于第一个from和select语句之间。这个例子从联接投影出最终“Let”表达式:

    var q =
        from c in db.Customers
        join o in db.Orders on c.CustomerID
        equals o.CustomerID into ords
        let z = c.City + c.Country//重命名
        from o in ords
        select new
        {
            c.ContactName,
            o.OrderID,
            z
        };

    技术的发展日新月异,随着时间推移,无法保证本博客所有内容的正确性。如有误导,请大家见谅,欢迎评论区指正!
    我创建了一个.NET开发交流群,用于分享学习心得和讨论相关技术难题。欢迎有兴趣的小伙伴扫码入群,相互学习!

  • 相关阅读:
    touch:创建文件及修改文件时间戳
    stat:查看文件时间参数
    获取二维数组里面实际存有数据的行数
    Math.Atan2 方法
    c#移位运算符("<<"及">>")
    c# 一维数组和二维数组的几种定义方式<转>
    C#异常处理总结
    C#图片灰度处理(位深度24→位深度8)、C#图片二值化处理(位深度8→位深度1)
    WinForm窗体及其控件的自适应
    C#的WinForm窗体美化
  • 原文地址:https://www.cnblogs.com/wml-it/p/14836639.html
Copyright © 2011-2022 走看看