Linq(Language INtegrated Query),语言集成查询。它允许开发人员使用统一的方式来操作数据源(包括XML、数据库、数组等)。
由于现在的数据格式越来越多,这种操作各种数据的统一方式不仅减小的数据访问的复杂性,也减少了开发人员的学习成本。同时Linq提供了一种类似SQL的语法,这使Linq语句非常的语义化,可以大大提高程序的可读性。
LINQ的关键词主要有from,select,in,where,group by,orderby等。
LINQ分为LINQ to Object,LINQ to XML,LINQ to SQL,LINQ to DataSet,LINQ to ADO.NET。其中LINQ to Object可以查询实现了IEnumerable<T>接口的集合。集合可以是任何类型,包括对象、整形、字符串等。
可以使用LINQ to Object来简化对对象集合的操作。下面是一个简单的实例,它在persons对象数组中查找userName为“Maggie”的用户的Email。
var address = from p in persons where p.userName=="Maggie" select p.email;
public class person
{
public string userName {get;set;}
public string email{get;set;}
}
后续会增加各种情形的实例。