linq中let关键字就是对子查询的一个别名,let子句用于在查询中添加一个新的局部变量,使其在后面的查询中可见。

 

linq中let关键字实例

 

1、传统下的子查询与LET关键字的区别

 
 
C# 代码   复制
linq中let关键字学习
linq中let关键字学习static void Main(string[] args)
{
{ 1, 2, 3, 4, 5, 6, 7, 8, 9 }; 
linq中let关键字学习linq中let关键字学习//传统下的子查询做法
linq中let关键字学习    var query = from num in numbers
linq中let关键字学习                select num * (from n in numbers
linq中let关键字学习where n % 2 == 0
linq中let关键字学习                              select n).Count(); 
linq中let关键字学习linq中let关键字学习//使用LET关键字的做法
linq中let关键字学习var query = from num in numbers
linq中let关键字学习          let evenNumbers = from n in numbers
linq中let关键字学习where n % 2 == 0
linq中let关键字学习                              select n
linq中let关键字学习           select num * evenNumbers.Count(); 
linq中let关键字学习linq中let关键字学习foreach (var item in query)
{
linq中let关键字学习        Console.WriteLine(item);
linq中let关键字学习    } 
linq中let关键字学习linq中let关键字学习    Console.Read(); 
linq中let关键字学习linq中let关键字学习} 
linq中let关键字学习

 

2、把每个单词开头包含a或者e的找出来

 
 
C# 代码   复制
linq中let关键字学习
linq中let关键字学习using System;
linq中let关键字学习using System.Linq;
linq中let关键字学习linq中let关键字学习public class Test
{
linq中let关键字学习static void Main(string[] args)
{
 };
linq中let关键字学习linq中let关键字学习        var query = from sentence in strings
linq中let关键字学习                    let words = sentence.Split(' ')//用空格分割成数组                
linq中let关键字学习                    from word in words
linq中let关键字学习                    let w = word.ToLower()//把每个字母小写        
linq中let关键字学习                    where w[0] == 'a' || w[0] == 'e'
linq中let关键字学习                    select word;
linq中let关键字学习linq中let关键字学习foreach (var s in query)
{
linq中let关键字学习            Console.WriteLine(s);
linq中let关键字学习        }
linq中let关键字学习        Console.ReadLine();
linq中let关键字学习    }
linq中let关键字学习}
linq中let关键字学习

 

3、linq实例3

 
 
C# 代码   复制
linq中let关键字学习
linq中let关键字学习var query = from p in persons
linq中let关键字学习            let friendlyName = p.Gender == "" ? "Mr" : "Ms" + p.Name
linq中let关键字学习            select new
{
linq中let关键字学习                UserID = p.ID,
linq中let关键字学习                FriendName = friendlyName
linq中let关键字学习            };
linq中let关键字学习foreach (var item in query)
{
linq中let关键字学习    Console.WriteLine("No:{0},Friendly Name:{1}", item.UserID, item.FriendName);
linq中let关键字学习}
linq中let关键字学习

 

4、linq实例4

 
 
C# 代码   复制
linq中let关键字学习
linq中let关键字学习public class Singer
{
{ set; get; }
{ set; get; }
linq中let关键字学习    }
linq中let关键字学习{
 ,Age=21},
,Age=25},
,Age=21}
linq中let关键字学习            };
linq中let关键字学习linq中let关键字学习linq中let关键字学习            var query = from a in list
linq中let关键字学习                        let b = a.Name
linq中let关键字学习                        let c=a.Age
linq中let关键字学习where b =="zhangs" & c>21
linq中let关键字学习                        select a;
linq中let关键字学习foreach (var item in query)
{
linq中let关键字学习                Response.Write("姓名: "+item.Name+"  年龄:"+item.Age);
linq中let关键字学习            }
linq中let关键字学习linq中let关键字学习//结果           姓名: zhangs 年龄:25
linq中let关键字学习//使用let 建立了个范围变量,这个范围变量在后续的where子句中使用,如果不使用let子句,where子句的表达式将写成这样:
linq中let关键字学习//where a.Name=="zhangs" & a.Age>21</span>
linq中let关键字学习

相关文章:

  • 2021-08-11
  • 2022-12-23
  • 2022-12-23
  • 2021-10-12
  • 2021-12-28
  • 2021-12-25
  • 2022-12-23
  • 2021-06-05
猜你喜欢
  • 2022-01-13
  • 2021-11-26
  • 2022-02-27
  • 2022-12-23
  • 2022-12-23
  • 2021-03-11
相关资源
相似解决方案