首页 > 代码库 > Linq学习(Let)

Linq学习(Let)

<span style="font-size:14px;">  //  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</span>

 

Linq学习(Let)