- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 注意强调 所有的查询方法都存放在 System.Linq.Enumerable 静态类中; 必要时可以打开 MSDN 演示 Enumerable 类的定义 以及它的成员方法 以使学员更好地了解到 LINQ 的本质 * * 请演示 btnSkipTakeDemo_Click 中的代码 注意不要对 Skip 方法望文生义 只知道它跳过了元素 而忽略了它其实也取元素的事实 随后的小结也会提示这一点 * 请演示 btnSkipWhileTakeWhileDemo_Click 中的代码 对于程度较好的班级 可以提示 TakeWhile 和 Where 的区别 可以先要求学员预测结果 * 注意强调查询方法组合在一起时,后一个方法的操作对象是在前一个查询方法的结果 Count/Sum/Min/Max/Avg操作符 Aggregate 说明:根据输入的表达式获取聚合值;不延迟。即是说:用一个种子值与当前元素通过指定的函数来进行对比来遍历集合中的元素,符合条件的元素保留下来。如果没有指定种子值的话,种子值默认为集合的第一个元素。 Linq查询总结 下面用一个表格总结一下这篇说的LINQ to SQL语句 Where 过滤;延迟 Select 选择;延迟 Distinct 查询不重复的结果集;延迟 Count 返回集合中的元素个数,返回INT类型;不延迟 LongCount 返回集合中的元素个数,返回LONG类型;不延迟 Sum 返回集合中数值类型元素之和,集合应为INT类型集合;不延迟 Min 返回集合中元素的最小值;不延迟 Max 返回集合中元素的最大值;不延迟 Average 返回集合中的数值类型元素的平均值。集合应为数字类型集合,其返回值类型为double;不延迟 Aggregate 根据输入的表达式获取聚合值;不延迟 联合查询 Union Intersect Except 联合查询方式 var sql = (data1.Select(p=p.stuNo)).Union (data2.Select(s=s.stuNo)); var sql = (from p in data1 select p.stuNo).Union (from s in data2 select s.stuNo); 查询方法 查询语句 Union将两个集合进行合并操作,过滤相同的项 var sql = (data1.Select(p=p.stuNo)). Intersect(data2.Select(s=s.stuNo)); var sql = (from p in data1 select p.stuNo).Intersect(from s in data2 select s.stuNo); 查询方法 查询语句 Intersect(相交)获取不同集合的相同项(交集) var sql = (data1.Select(p=p.stuNo)). Except(data2.Select(s=s.stuNo)); var sql = (from p in data1 select p.stuNo). Except(from s in data2 select s.stuNo); 查询方法 查询语句 Except(与非)从某集合中删除与另一个集合中相同的项 联合查询方式小结 使用联合查询方式时,需要注意: Union:连接不同的集合,自动过滤相同项;延迟。即是将两个集合进行合并操作,过滤相同的项 Intersect(相交):取相交项;延迟。即是获取不同集合的相同项(交集)。即先遍历第一个集合,找出所有唯一的元素,然后遍历第二个集合,并将每个元素与前面找出的元素作对比,返回所有在两个集合内都出现的元素。 Except(与非):排除相交项;延迟。即是从某集合中删除与另一个集合中相同的项。先遍历第一个集合,找出所有唯一的元素,然后再遍历第二个集合,返回第二个集合中所有未出现在前面所得元素集合中的元素。 Join OrderBy Join操作 适用场景:在我们表关系中有一对一关系,一对多关系,多对多关系等。对各个表之间的关系,就用这些实现对多个表的操作。 说明:在Join操作中,分别为Join(Join查询), SelectMany(Select一对多选择)和GroupJoin(分组Join查询)。 该扩展方法对两个序列中键匹配的元素进行inner join操作 SelectMany 说明:我们在写查询语句时,如果被翻译成SelectMany需要满足2个条件。 1:查询语句中没有join和into, 2:必须出现EntitySet。在我们表关系中有一对一关系,一对多关系,多对多关系等,下面分别介绍一下。 一对多 var q =f
文档评论(0)