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 };
本文来自博客园,作者:码农阿亮,转载请注明原文链接:https://www.cnblogs.com/wml-it/p/14836639.html
技术的发展日新月异,随着时间推移,无法保证本博客所有内容的正确性。如有误导,请大家见谅,欢迎评论区指正!
开源库地址,欢迎点亮:
GitHub:https://github.com/ITMingliang
Gitee: https://gitee.com/mingliang_it
GitLab: https://gitlab.com/ITMingliang
建群声明: 本着技术在于分享,方便大家交流学习的初心,特此建立【编程内功修炼交流群】,为大家答疑解惑。热烈欢迎各位爱交流学习的程序员进群,也希望进群的大佬能不吝分享自己遇到的技术问题和学习心得!进群方式:扫码关注公众号,后台回复【进群】。