学习LINQ时,经常会遇到LINQ查询问题,这里将介绍LINQ查询问题的解决方法。
在之前的C#版中,开发者应用许多不同的查询语言来访问不同的数据源。例如,要查询一个XML文件,开发者会使用XPath,要查询一个SQL数据库,开发者将使用SQL。在过去这种方法十分有效,并且现在仍然是访问各种数据的主要方法。但是,这种方法具有一些缺点。一个显著的缺点在于:开发者必须以一种不同的语言,而非他们当前使用的语言(如SQL或XPath)来编写查询代码。另一个缺点是,在执行某些查询语言,如SQL时,开发者必须编写映射代码将查询结果转化为可用的C#业务对象。
C#3.0推出一种称之为语言集成查询(LINQ)的新方法。应用LINQ,开发者可以编写出能够搜索任何IEnumerable数据源的代码。所以除了应用TSQL访问MS SQL数据库,应用XPath访问XML文件外,他们还可以应用LINQ。
下面的代码(列表C)是一个LINQ查询的例子,它返回所有OrderCount大于10的顾客:
- using System;
- using System.Query;
- using System.Collections.Generic;
- public class SampleClass
- {
- static void Main()
- {
- List customers = GetCustomers();
- //Write our query to retrieve customers who have more than
- // 10 orders.
- IEnumerable queryResult = from customer in customers
- where customer.OrderCount > 10
- orderbycustomer.ID
- select customer;
- }
- }
LINQ与SQL或XPath不同,LINQ查询用C#,而非第三方语言编写。这样,查询就不会出现类型问题,开发者也就没有必要编写映射代码把查询返回的数据转化成C#对象,而由LINQ API自动处理映射。
基本上,在ORM解决方案中,LINQ对象用途很大。同样,它的范围也非常广泛,有大量MSDM信息描述了它的功能。
标题名称:LINQ查询简单概述
文章来源:http://www.shufengxianlan.com/qtweb/news8/451408.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联