Func<Invoice, bool> func = x => x.State == InvoiceState.Created;
Expression<Func<Invoice, bool>> expression = x => x.State == InvoiceState.Created; using (var db = new CrmDbContext())
{
var q1 = db.Invoices.Where(func); //全部查询出来后筛选
var q2 = db.Invoices.Where(expression); //直接延迟到Count时执行 var query = db.Invoices.AsQueryable();
var qq1 = query.Where(func);//全部查询出来后筛选
var qq2 = query.Where(expression); //直接延迟到Count时执行 Console.WriteLine($"q1:{q1.Count()}");
Console.WriteLine($"q2:{q2.Count()}");
Console.WriteLine($"qq1:{qq1.Count()}");
Console.WriteLine($"qq2:{qq2.Count()}");
}

看到上面的不同表现结果,知道该怎么写了吧!

简单来说:委托的查询是针对一个(已存在的)集合的,而表达式是用来表述条件。

最新文章

  1. OracleConnection is obsolete
  2. Asterisk manager API(AMI)文档(中文版)
  3. vs快捷键
  4. 支撑双十一的,不仅仅是AliSQL,也不仅仅是Oceanbase
  5. undefined reference to libiconv_open&#39;
  6. 队列中使用Database Driver
  7. AIX配置时间服务器(NTP)
  8. 设置配置文件信息时的classpath
  9. poj3177(边双连通分量+缩点)
  10. ISAPI_Rewrite 3 伪静态软件
  11. ubuntu tree 查看目录结构
  12. C# 中ref与out关键字区别
  13. OpenStack控制节点上搭建Q版keystone服务(step3)
  14. JS prototype chaining(原型链)整理中&#183;&#183;&#183;&#183;&#183;&#183;
  15. 在线HTML编辑器KindEditor
  16. DataTable的一个简单的扩展
  17. Linux-(rcp,scp)
  18. leetcode ---双指针+滑动窗体
  19. LOJ #6282. 数列分块入门 6-分块(单点插入、单点查询、数据随机生成)
  20. CSS:Tutorial three

热门文章

  1. Vlan 原理
  2. Myeclipse10.7.1 导出war包报错
  3. linux几种时间函数总结
  4. SSM-MyBatis-03:Mybatis中简单的整合日志
  5. mysqldump详解
  6. 第一个vue示例-高仿微信
  7. util.go
  8. baseFileWriter.go
  9. dqname_widnows.go
  10. Golang 知识点总结