- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第17章LINQLINQ表示语言集成查询,它包括用于从数据源检索信息的一组功能。数据检索是许多程序的重要组成部分。C#通过一组互相关联的功能支持LINQ。这些功能包括C#语言中新增的查询语法、表达式、匿名方法和扩展方法。本章将详细介绍这些功能。2023必威体育精装版整理收集do
something
17.1LINQ的基础知识LINQ的核心是查询,查询指定从数据源获得哪些数据。使用查询时,首先必须创建某种形式的查询,然后执行该查询。执行查询的一种方法是在foreach循环中使用查询。执行查询可以获得相应的结果。本章中所有的程序中必须都包括System.Linq命名空间。代码如下:usingSystem.Linq;
17.1.1简单查询查询必须从from关键字开始,而以select或group子句结束。select子句确定查询列举的值的类型,group子句则分组返回数据,其中每个组能够列举。where子句指定某种条件,查询只会返回满足该条件的项。
查询的一般格式如右图所示。其中,在from子句中,range-variable表示范围变量,data-source表示数据源。变量将接收从数据源获得的元素。在where子句中,boolean-expression表示条件表达式,必须产生布尔结果。在select子句中指定了查询获得的内容,要以“;”结尾。
【示例17-1】以下程序使用查询获得包含在整型数组中的负数值。其中,程序创建了查询,如下图所示。
17.1.2多次执行查询查询用于检索数据的一组规则,但是自身不产生结果,因此相同的查询可以多次运行。如果数据源在多次运行期间发生改变,那么查询的结果就可能不同。因此,在执行查询后,始终获得必威体育精装版的结果。【示例17-2】以下程序重写了前面的示例,num数组的内容在三次执行查询后发生的变化。其中,当num[0]元素的值和num[1]元素的值发生改变后,重新运行查询的结果就会发生改变。这便是查询的优点。
17.2查询表达式中使用的上下文关键查询表达式中使用的上下文关键,如下表所示。其中,查询子句以如下表所示的上下文关键字开始。子句说明from指定数据源和范围变量where根据一个或多个由逻辑“与”和逻辑“或”运算符(?或?||)分隔的布尔表达式筛选源元素select指定当执行查询时返回的序列中的元素将具有的类型和形式group按照指定的键值对查询结果进行分组into提供一个标识符,它可以充当对join、group或select子句的结果的引用orderby基于元素类型的默认比较器按升序或降序对查询结果进行排序join基于两个指定匹配条件之间的相等比较来联接两个数据源let引入一个用于存储查询表达式中的子表达式结果的范围变量injoin子句中的上下文关键字onjoin子句中的上下文关键字equalsjoin子句中的上下文关键字bygroup子句中的上下文关键字ascendingorderby子句中的上下文关键字descendingorderby子句中上下文关键字fromwhereselectgrouporderbyjoinlet??
17.2.1使用where子句筛选值本章前面已经介绍过,where子句用于筛选查询返回的数据。前面的示例只使用了一条where子句。其实,可以使用多条where子句。其格式如下图(左)所示。注意:可以把多条where子句用“”符号合并成一条where子句。其格式如下图(右)所示。
`【示例17-3】以下程序使用多条where子句显示数组中小于10的正数。where条件可以使用结果为布尔值的任何有效表达式。【示例17-4】以下程序定义了一个string数组,查询包含3个字符并且以“abc”结束的字符串。
17.2.2使用orderby子句排序结果我们通常需要排序查询结果,这样就使用到了orderby子句。orderby子句按照一种或多种标准排序结果。按照单个标准排序orderby子句的通用形式如下图所示。其中,sort-on指定排序的标准,该标准可以是包括存储在数据源中的整个元素。how的值确定是按升序还是降序排序,该值必须是ascending(升序)或descending(降序)。通常默认的排序是升序。
【示例17-5】以下程序使用orderby子句按升序排序int数组的值。其中,由于默认的排序方式是升序,所以不用指定ascending选项。如果,排序方式为降序,需要指定descending选项。orderby子句按照多个标准排序的形式如下图所示。其中,在排序的时候首先按sort-onA标准排序。如果sort-onA相同,则按sort-onB标准排序。如果sort-onB相同,那么就按sort-onC标准排序,以此类推。【示例17-6】以下程序使
您可能关注的文档
- 辅导班老师培训演讲资料.pptx
- 辩论赛 ppt课件可编辑.pptx
- 跟上兔子小学英语绘本阅读课件home is best.pptx
- 躯体症状与抑郁.pptx
- 辣椒品种可编辑.pptx
- 辛亥革命可编辑.pptx
- 轴承基本类型及型号.pptx
- 输血常见的不良反应及护理措施.pptx
- 轴承使用-管理-手册.docx
- 输送机生产工艺.docx
- 2023-2024学年高中地理人教版必修3第1章 地理环境与区域发展单元测试完整版723214860.pdf
- 2023-2024学年浙江省金华市义乌市科目四模拟考试100题【答案免费】.pdf
- 14 船舶残油、油污水排放(接收)作业现场监督检查 .pdf
- 2021纪检委员述职报告5篇 .pdf
- 2022年机械式停车设备司机考试内容及考试题库含答案参考81 .pdf
- 2023学院财务工作述职报告刘秘书 .pdf
- 2022年城市管理的调研报告 .pdf
- 2021年国内水路运输管理规定全文 .pdf
- 2019年道路运输车辆管理二级维护新规定 .pdf
- 2023-2024学年高中地理中华地图版选择性必修1第2单元 岩石圈与地表形态.pdf
文档评论(0)