Linq学习(Let)


  //  let子句用于在LINQ表达式中存储子表达式的计算结果。let子句创建一个范围变量来存储结果,变量被创建后,不能修改或把其他表达式的结果重新赋值给它。此范围变量可   //以再后续的LINQ子句中使用。
public class Singer
    {
        public string Name { set; get; }
        public int Age { set; get; }
    }

 List<Singer> list = new List<Singer>(){
              new Singer{Name="zhangs" ,Age=21},
              new Singer{Name="zhangs",Age=25},
              new Singer{Name="margy",Age=21}
            };


            var query = from a in list
                        let b = a.Name
                        let c=a.Age
                        where b =="zhangs" & c>21
                        select a;
            foreach (var item in query)
            {
                Response.Write("姓名: "+item.Name+"  年龄:"+item.Age);
            }

//结果           姓名: zhangs 年龄:25
//使用let 建立了个范围变量,这个范围变量在后续的where子句中使用,如果不使用let子句,where子句的表达式将写成这样:
//where a.Name=="zhangs" & a.Age>21

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值