Visual Studio 2008之新特性LINQ(三)之LINQ To Object查询

       前面两篇LINQ的介绍算是向大家说明了什么是LINQ和LINQ的基本操作,今天给大家介绍一下LINQ to Object查询,LINQ支持的数据类型是只要继承了IEnumerable和IEnumerable<T>的类型,下面有两个例子,一个是用来查询XML的,一个是用来查询数组的(工程文件为上两篇中的LINQDEMO)。

XML:

先建立一个XML文件,内容如下:

 

<? xml version="1.0" encoding="utf-8"  ?>
< XMLFile >
  
< temp >
    
< name > test1 </ name >
    
< value > this is the first </ value >
  
</ temp >
  
< temp >
    
< name > test2 </ name >
    
< value > this is the second </ value >
  
</ temp >
  
< temp >
    
< name > test3 </ name >
    
< value > this is the third </ value >
  
</ temp >
  
< temp >
    
< name > test4 </ name >
    
< value > this is the fourth </ value >
  
</ temp >
  
< temp >
    
< name > test5 </ name >
    
< value > this is the fifth </ value >
  
</ temp >
</ XMLFile >

保存,再编写查询代码:

 

using  System;
using  System.Collections;
using  System.Configuration;
using  System.Data;
using  System.Linq;
using  System.Web;
using  System.Web.Security;
using  System.Web.UI;
using  System.Web.UI.HtmlControls;
using  System.Web.UI.WebControls;
using  System.Web.UI.WebControls.WebParts;
using  System.Xml.Linq;
using  System.Xml;

public   partial   class  LINQtoXML : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    
{
        XDocument xml 
= XDocument.Load(Server.MapPath("XMLFile.xml"));

        var xmlfile 
= from x in xml.Descendants("temp")
                      select 
new 
                      
{
                          name 
= x.Element("name").Value,
                          value 
= x.Element("value").Value
                      }
;
        
this.GridView1.DataSource = xmlfile;
        
this.GridView1.DataBind();
    }

}

 

数组查询

 

using  System;
using  System.Collections;
using  System.Configuration;
using  System.Data;
using  System.Linq;
using  System.Web;
using  System.Web.Security;
using  System.Web.UI;
using  System.Web.UI.HtmlControls;
using  System.Web.UI.WebControls;
using  System.Web.UI.WebControls.WebParts;
using  System.Xml.Linq;

public   partial   class  LINQtoObject : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
int[] array = new int[] 1234567890 };

        var arrayQuery 
= from a in array
                   
where (a % 2!= 0
                   select a;

        
this.GridView1.DataSource = arrayQuery;
        
this.GridView1.DataBind();
    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值