Linq Where操作概述

本文向大家介绍Linq Where操作,可能好多人还不了解Linq Where操作,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。

适用场景:实现过滤,查询等功能。

说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句。

Linq Where操作包括3种形式,分别为简单形式、关系条件形式、First()形式。下面分别用实例举例下:

1.简单形式:

例如:使用where筛选在伦敦的客户

 
 
 
  1. var q = from c in db.Customers where c.City == "London" select c; 

再如:筛选1994 年或之后雇用的雇员:

 
 
 
  1. var q = from e in db.Employees where e.HireDate >= new DateTime(1994, 1, 1) select e; 

2.关系条件形式:

筛选库存量在订货点水平之下但未断货的产品:

 
 
 
  1. var q = from p in db.Products where p.UnitsInStock <= p.ReorderLevel && !p.Discontinued select p; 

筛选出UnitPrice 大于10 或已停产的产品:

 
 
 
  1. var q = from p in db.Products where p.UnitPrice > 10m || p.Discontinued select p; 

下面这个例子是调用两次where以筛选出UnitPrice大于10且已停产的产品。

 
 
 
  1. var q = db.Products.Where(p=>p.UnitPrice > 10m).Where(p=>p.Discontinued); 

3.First()形式:

返回集合中的一个元素,其实质就是在SQL语句中加TOP (1)。

简单用法:选择表中的第一个发货方。

 
 
 
  1. Shipper shipper = db.Shippers.First(); 

元素:选择CustomerID 为“BONAP”的单个客户

 
 
 
  1. Customer cust = db.Customers.First(c => c.CustomerID == "BONAP"); 

条件:选择运费大于 10.00 的订单:

 
 
 
  1. Order ord = db.Orders.First(o => o.Freight > 10.00M); 

以上介绍Linq Where操作。

【编辑推荐】

  1. Linq匿名类型简单概述
  2. Linq随机读取数据浅析
  3. Linq Lambda表达式全面分析
  4. Linq扩展方法简单分析
  5. 初探Linq局部变量类型
THE END