linq where的应用
此文有些是转载http://www.cnblogs.com/lyj。有些是自已原创。 如有侵权请告之本人。万分见谅。
Where操作
Where操作
适用场景:实现过滤,查询等功能。
说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句。
Where操作包括3种形式,分别为简单形式、关系条件形式、First()形式。下面分别用实例举例下:
1.简单形式:
var q = from c in db.Customers where c.City == "London" select c;
var q = from e in db.Employees where e.HireDate >= new DateTime(1994, 1, 1) select e;
2.关系条件形式:
var q = from p in db.Products where p.UnitsInStock <= p.ReorderLevel && !p.Discontinued select p;
var q = from p in db.Products where p.UnitPrice > 10m || p.Discontinued select p;
var q =
db.Products.Where(p=>p.UnitPrice > 10m).Where(p=>p.Discontinued);
3.First()形式:
返回集合中的一个元素,其实质就是在SQL语句中加TOP (1)
Shipper shipper = db.Shippers.First();//Shipper 是一个实体类。
Customer cust = db.Customers.First(c => c.CustomerID == "BONAP");
Order ord = db.Orders.First(o => o.Freight > 10.00M);
再说一下DataContext 的应用吧。 说两点。太详细我也说不上来。
ExecuteCommand() 可以直接操作SQL语句。
ExecuteQuery() 查询用的。 有一个TYPE参数。 你可以设置为自定义类。也很方便。
要注意一点就是DataContext 里面的数据类型要与数据库中一致。 如不同可以自已修改DataContext 属性的数据类型。