Lambda

Lambda表达式和匿名方法很相似,但Lambda表达式比匿名方法更灵活,并且语法比匿名方法更简洁。

在LINQ中可以使用Lambda表达式创建委托,这些委托将稍后执行查询时被调用。

Lambda表达式使用的操作符“=>”。这个操作符的意思就是“流入”,左侧为任意的输入参数,右侧可以表达式,也可以语句块。

Lambda可以包括任意数量的语句,但它通常会保持为两个或三个语句,主要为了便于阅读以及防止它太过复杂。

使用Lambda表达式需记住以下规则:

1.如果Lambda表达式返回一个值,返回值必须隐式地转换成委托类型。

2.Lambda表达式包含的参数数目必须同委托类型的参数数目相同。

3.每个输入参数必须隐式地转换相应的委托参数。

var pro=context.products.Single(p=>p.id==id);

此查询也可以写为:

var pro=from c in context where c.id==id select c;

这两个查询返回相同的输出结构,但是Lambda表达式使用方法语法以内连接表达式的方式变成写查询。

Single标准查询操作符来返回序列中的单个元素。操作符左边的p是输入变量,对应于查询表达式的p

LinqToSQL3的更多相关文章

随机推荐

  1. Linux设备驱动程序 之 read和write

    read和write原型 read和write方法完成的任务是相似的,亦即,拷贝数据到应用程序空间,或者反过来从应用程序空间拷贝数据:因此,它们的原型很相似,如下: ssize_t (*read) ( ...

  2. SRS之SrsHls::on_audio详解

    1. SrsHls::on_audio 将音频数据封装到 ts 文件中. /* * mux the audio packet to ts. * @param shared_audio, directl ...

  3. JAVA类定义的修饰

    命名类的访问权限public.protected.friendly,private 这四个的权限, 作用域: 当前(父,超)类: 同一Package: 派生(子)类: 其他Package: publi ...

  4. P3951 小凯的疑惑

    P3951 小凯的疑惑 题解 题意也就是求解不能用 ax+by 表示的最大数 ans(a,b,x,y,都是正整数) 给定 a ( =7 ) ,  b ( =3 ) 我们可以把数轴非负半轴上的数按照a的 ...

  5. [go]socket编程

    socket特性 总是成对出现 是全双工的(同时支持收发)(两个channel绑在一起) 应用程序 - cs模式(客户端开发) - bs模式(web开发) net包api基础 都是客户端主动发数据(c ...

  6. easyUI之练习

    <%@ page language="java" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC & ...

  7. 指定JSON.toJSONString中实体类属性的输出顺序

    最近在使用JSON.toJSONString过程中出现实体类的属性与转换之前的顺序不一致 public static void main(String[] args) { Person person ...

  8. 建立Maven工程时出错,Failure to transfer

    建立Maven工程时出错,Failure to transfer com.thoughtworks.xstream:xstream:jar:1.3.1 Failure to transfer com. ...

  9. Python3.x运行Python2.x代码报错 syntax error "Missing parentheses in call to 'print'

    #另外一种错误 SyntaxError: Missing parentheses in call to 'print'. Did you mean print( 查看代码,格式如下: print &q ...

  10. C++中非数nan的定义与范例

    /* * C++中非数的定义 NaN :阶码的每个二进制位全为1  并且  尾数不为0: 无穷:阶码的每个二进制位全为1  并且  尾数为0:符号位为0,是正无穷, 符号位为1是负无穷.所以NaN.正 ...