您的位置:知识库 »

LINQ to SQL语句(7)之Exists/In/Any/All/Contains

作者: 李永京  来源: 博客园  发布时间: 2008-09-18 15:36  阅读: 61376 次  推荐: 10   原文链接   [收藏]  
摘要:这个系列的第七篇,讲解Exists/In/Any/All/Contains操作符用法。
[1] Any讲解
[2] All讲解和Contains讲解1
[3] Contains讲解2

系列文章导航:

LINQ to SQL语句(1)之Where

LINQ to SQL语句(2)之Select/Distinct

LINQ to SQL语句(3)之Count/Sum/Min/Max/Avg

LINQ to SQL语句(4)之Join

LINQ to SQL语句(5)之Order By

LINQ to SQL语句(6)之Group By/Having

LINQ to SQL语句(7)之Exists/In/Any/All/Contains

LINQ to SQL语句(8)之Concat/Union/Intersect/Except

LINQ to SQL语句(9)之Top/Bottom和Paging和SqlMethods

LINQ to SQL语句(10)之Insert

LINQ to SQL语句(11)之Update

LINQ to SQL语句(12)之Delete和使用Attach

LINQ to SQL语句(13)之开放式并发控制和事务

LINQ to SQL语句(14)之Null语义和DateTime

LINQ to SQL语句(15)之String

LINQ to SQL语句(16)之对象标识

LINQ to SQL语句(17)之对象加载

LINQ to SQL语句(18)之运算符转换

LINQ to SQL语句(19)之ADO.NET与LINQ to SQL

LINQ to SQL语句(20)之存储过程

LINQ to SQL语句(21)之用户定义函数

LINQ to SQL语句(22)之DataContext

LINQ to SQL语句(23)之动态查询

LINQ to SQL语句(24)之视图

LINQ to SQL语句(25)之继承

LINQ简介

adsfsaf


All

说明:用于判断集合中所有元素是否都满足某一条件;不延迟

1.带条件形式

var q =
    from c in db.Customers
    where c.Orders.All(o => o.ShipCity == c.City)
    select c;

语句描述:这个例子返回所有订单都运往其所在城市的客户或未下订单的客户。

Contains

说明:用于判断集合中是否包含有某一元素;不延迟。它是对两个序列进行连接操作的。

string[] customerID_Set =
    new string[] { "AROUT", "BOLID", "FISSA" };
var q = (
    from o in db.Orders
    where customerID_Set.Contains(o.CustomerID)
    select o).ToList();

语句描述:查找"AROUT", "BOLID" 和 "FISSA" 这三个客户的订单。先定义了一个数组,在LINQ to SQL中使用Contains,数组中包含了所有的CustomerID,即返回结果中,所有的CustomerID都在这个集合内。也就是in。 你也可以把数组的定义放在LINQ to SQL语句里。比如:

var q = (
    from o in db.Orders
    where (
    new string[] { "AROUT", "BOLID", "FISSA" })
    .Contains(o.CustomerID)
    select o).ToList();
10
0
标签:LINQ LINQ to SQL

热门文章

    最新文章

      最新新闻

        热门新闻