ASP.NET-Lambda表达式

Lambda 表达式是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式树类型。

注意:Lambda 表达式都使用 Lambda 运算符为“=>”,该运算符读为“goes to”。可以将此表达式分配给委托类型。 

Lambda 运算符的左边是输入参数(如果有),右边包含表达式或语句块。Lambda 表达式a=>a * a读作“a goes to a times a”

Lambda表达式的基本表现形式:

(input parameters)=>expression

其中input parameters表示输入参数,expression表示表达式。

提示:Lambda输入的参数的数量可以是空、1个或多个。当输入的参数为空时。Lambda表达式左边的括号不能省略。

()=>Response.Write("这是一个Lambda表达式。");

如果Lambda表达式的输入参数的数量为1,输入参数的括号可以省略。

不省略(a)=>a*a;

 省略  a=>a*a;

如果Lambda表达式的输入参数的数量大于1,输入参数的括号必须的,且参数之间用逗号(,)隔开。

(a,b)=>a*b;

注意:Lambda表达式的语句必须放置在“{”和“}”之间,Lambda表达式最常用的用法就是查询
delegate int del(int i);
  static void Main(string[] args)
  {
      del myDelegate = x => x * x;
      int j = myDelegate(5); //j = 25
  
  }
 例:LinqDBDataContext DB = new LinqDBDataContext();
            var query = fromproduct in DB.Product
                        where product.Price == DB.Product.Max(p => p.Price)
                        select product;
 
           GridView1.DataSource = query;
            GridView1.DataBind();

猜你喜欢

转载自blog.csdn.net/cool__king/article/details/79845990