教你如何实现LINQ查询语句
1个回答
展开全部
本文就从这三个方面对实现LINQ查询语句做简单的介绍。
示例:classIntroToLINQ{staticvoidMain(){
//获取数据源(此处由一个数组充当)int[]numbers=newint[7]{0,1,2,3,4,5,6};
//创建查询(numQuery是IEnumerable类型)
varnumQuery=fromnuminnumberswhere(num%2)==
0selectnum;//执行查询foreach(intnuminnumQuery){Console.write("{0,1}"
,num);}}}
实现LINQ查询语句之数据源:
上面示例中,数据源是一个数组,隐式支持泛型IEnumerable(T)接口,而支持IEnumerable(T)或派生接口的类型称为"可查询类型"。因此数组即可用LINQ进行查询。
如果数据源还没有作为可查询类型出现在内存中,则LINQ提供程序必须以此方式表示数据源。例如,LINQ to XML将 xml文档加载到可查询的XElement类型中:usingSystem.Xml.Linq
XElementcontacts=XElement.Load(@
"c:\my.xml");//XElement表示一个xml元素
在LINQ to SQL 中,必须先创建对象关系映射,然后针对这些对象编写查询。LINQ会处理对象查询与数据库间的通信。
usingSystem.Data.Linq;
DataContextdb=newDataContext(@
"c:\northwind.mdf");实现LINQ查询语句之创建查询:
查询要先存储在查询变量中,并用查询表达式进行初始化。这个查询变量不执行任何操作也不返回数据,只有在执行查询时用来存储为生成结果而必须的信息。
实现LINQ查询语句之执行查询:
上例中使用foreach的地方就是检索查询结果的地方,它在创建后才执行,因此称为延迟执行源码天空
,num保存返回的值。
当需要用到聚合函数查询时,则是强制立即执行
示例:classIntroToLINQ{staticvoidMain(){
//获取数据源(此处由一个数组充当)int[]numbers=newint[7]{0,1,2,3,4,5,6};
//创建查询(numQuery是IEnumerable类型)
varnumQuery=fromnuminnumberswhere(num%2)==
0selectnum;//执行查询foreach(intnuminnumQuery){Console.write("{0,1}"
,num);}}}
实现LINQ查询语句之数据源:
上面示例中,数据源是一个数组,隐式支持泛型IEnumerable(T)接口,而支持IEnumerable(T)或派生接口的类型称为"可查询类型"。因此数组即可用LINQ进行查询。
如果数据源还没有作为可查询类型出现在内存中,则LINQ提供程序必须以此方式表示数据源。例如,LINQ to XML将 xml文档加载到可查询的XElement类型中:usingSystem.Xml.Linq
XElementcontacts=XElement.Load(@
"c:\my.xml");//XElement表示一个xml元素
在LINQ to SQL 中,必须先创建对象关系映射,然后针对这些对象编写查询。LINQ会处理对象查询与数据库间的通信。
usingSystem.Data.Linq;
DataContextdb=newDataContext(@
"c:\northwind.mdf");实现LINQ查询语句之创建查询:
查询要先存储在查询变量中,并用查询表达式进行初始化。这个查询变量不执行任何操作也不返回数据,只有在执行查询时用来存储为生成结果而必须的信息。
实现LINQ查询语句之执行查询:
上例中使用foreach的地方就是检索查询结果的地方,它在创建后才执行,因此称为延迟执行源码天空
,num保存返回的值。
当需要用到聚合函数查询时,则是强制立即执行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询