`
terryfeng
  • 浏览: 506944 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

LINQ to XML 用 LINQ 查询 XML

阅读更多

将一个已知的XML放到XDocument 对象当中使用LINQ 查询非常的容易,下面是一个例子。

查找XML文档中的所有PERSONA元素显示结果个数,并遍历输出其值

public void MyDescendants()
        {
            XDocument xdoc = XDocument.Load(Server.MapPath("hamlet.xml"));
            //查找元素名为PERSONA 的元素
            var query = from people in xdoc.Descendants("PERSONA")
                        select people.Value;
            //people 是符合条件元素结果集 而people.Value;就是这个结果集的所有元素的值的序列
            Response.Write(query.Count() + " 个玩家被找到。");

            Response.Write("<p />他们是: <p />");

            foreach (var item in query)
            {
                //输出他们的值
                Response.Write( item + "<br />");

            }
        
        }

 

通过URL 找到一个网络上的RSS XML文档,并查询。

public void MyRSS()
       {
           //通过下面的代码你可以看到一个简单的网页RSS阅读器
           XDocument xdoc = XDocument.Load(@"http://www.cnblogs.com/TerryFeng/rss");
           //找到channel元素集合
           var query = from rssFeed in xdoc.Descendants("channel")
                       select new
                       {
                           Title = rssFeed.Element("title").Value,//获取其下的title元素的值组成新结果集匿名对象的属性
                           Description = rssFeed.Element("description").Value,//获取其下的description元素的值组成新结果集匿名对象的属性
                           Link = rssFeed.Element("link").Value,//获取其下的link元素的值组成新结果集匿名对象的属性
                       };

           foreach (var item in query)
           {
               Response.Write("博客: " + item.Title + "<br />");
               Response.Write("描述: " + item.Description + "<br />");
               Response.Write("地址: " + item.Link + "<br /><p />");
           }

           //第二个查询,查询文档中的item元素,每个项目就是一个博客随笔
           var queryPosts = from myPosts in xdoc.Descendants("item")
                            select new
                            {
                                Title = myPosts.Element("title").Value,
                                Published = DateTime.Parse( myPosts.Element("pubDate").Value),
                                Description = myPosts.Element("description").Value,
                                Url = myPosts.Element("link").Value,
                                Comments = myPosts.Element("comments").Value,
                            };

           foreach (var item in queryPosts)
           {
               Response.Write("标题: " + item.Title + "<br />");
               Response.Write("发布日期: " + item.Published + "<br />");
               Response.Write("链接: " + item.Url + "<br />");
               Response.Write("内容: " + item.Description + "<br />");
               Response.Write("注释: " + item.Comments + "<br /><p />");
               

           }

           Console.ReadLine();


       }

 

分享到:
评论

相关推荐

    精通LINQ LINQ to XML

    《精通LINQ LINQ to XML》是一本专为开发者深入理解和掌握LINQ(Language Integrated Query,语言集成查询)技术,特别是LINQ to XML部分而编写的权威指南。这本书结合了LINQ的基础、进阶和实战应用,是学习LINQ的...

    LINQ教程中文版(LINQ TO SQL ,LINQ TO XML)

    2. **查询表达式**:与LINQ to SQL类似,可以使用C#或VB.NET的查询语法对XML进行复杂查询,如`from el in doc.Descendants("item") select el.Element("title")`。 3. **内存效率**:LINQ to XML在内存使用上更为...

    Linq to xml,读取XMl节点值

    在本篇文章中,我们将深入探讨如何使用 LINQ to XML 来读取 XML 节点值,并将其绑定到应用程序中的不同组件,如 Windows Forms 控件。 1. **XML 基础** 在讨论 LINQ to XML 之前,我们先要了解 XML(Extensible ...

    LINQ To Xml示例程序

    与传统的DOM(文档对象模型)或XPath、XQuery等XML处理方法相比,LINQ to XML 提供了一种更简洁、类型安全的方式来创建、操作和查询XML文档。它的API设计紧密地与C#和VB.NET语言特性相结合,使得代码更加清晰、...

    linq to xml入门的例子

    3. **查询XML**: LINQ to XML 提供了丰富的查询语法,包括 `Where`、`Select`、`Descendants` 和 `Elements` 等。例如,查询 "root" 元素下的所有 "child" 元素: ```csharp var children = from child in root....

    LINQ to XML操作XML的代码,通过它很快掌握用内存在对象方式操作XML数据

    4. **XPath** 支持:虽然LINQ to XML提供了更强大的查询能力,但仍然可以使用XPath表达式获取XML节点,通过`XPathSelectElements()`或`XPathSelectElement()`方法实现。 5. **序列化和反序列化**:你可以方便地将...

    LInq入门宝典 Linq To Xml linq to sql

    LInq包括多个部分,如LInq To Objects、LInq To Xml、LInq To Sql等,它们分别针对不同的数据源提供强大的查询支持。 **一、LInq To Xml** LInq To Xml是LInq的一个关键组成部分,它为XML处理提供了强大的API。在...

    LINQ TO XML

    LINQ to XML 的查询功能非常强大,它支持XPath和CSS选择器的查询方式,但更推荐使用Linq表达式。例如,我们可以使用`.Descendants()`或`.Elements()`查找子元素,使用`.Attribute()`获取属性值: ```csharp var ...

    LINQ TO XML操作示例 初学者必看

    LINQ TO XML操作示例 轻轻松松 学会简单操作 本例子包含了通过LINQ创建XML、加载XML、读取XML、修改XML元素、属性、删除XML元素节点、属性,XML排序,保存XML等 基本上XML的操作都包含在这里面了。 适合学习LINQ...

    linq to xml 增,删,改,查

    "压缩包子文件的文件名称列表"中提到的 "Student" 可能是一个包含示例XML数据的文件,用于演示如何使用LINQ to XML进行操作。实际应用时,你需要将这个文件名替换为实际的XML文件路径。 总的来说,LINQ to XML 提供...

    linq to sql 、linq to xml 、linq to object

    LINQ to XML提供了一种新的处理XML文档的方式,它将XML文档视为对象集合,可以直接进行查询和修改。学习LINQ to XML涉及以下内容: - 概述:理解LINQ to XML的基本概念和优势。 - 编程概述:创建XML文档,添加、...

    Linq 大全 Linq To Sql Linq To DataSet Linq To Object Linq to Xml

    可能包含了各种LINQ应用场景的示例代码,如如何使用LINQ to SQL执行数据库查询,如何使用LINQ to DataSet操作数据集,如何使用LINQ to Object处理内存中的数据,以及如何使用LINQ to XML解析和生成XML文档。...

    示例描述:本章介绍LINQ to XML相关技术和使用

    示例描述:本章介绍LINQ to XML相关技术和使用。 CreateSimpleXMLTree 演示通过XElement创建简单的XML树。 CreateAttributeElement 演示通过XElement创建具有属性的XML元素。 CreateSubElement 演示通过...

    语言集成查询(LINQ)之LINQ.to.XML入门篇

    总的来说,“LINQ to XML入门篇”将引导我们逐步掌握如何在C#中利用LINQ查询XML数据,理解其基本语法、操作方法以及优势,从而在实际开发中提高效率,简化XML处理任务。学习并熟练掌握LINQ to XML,对于任何.NET...

    Linq to xml 案例

    Linq(Language Integrated Query,语言集成查询)是一种在C#和VB.NET中对数据进行查询的新方式,而Linq to XML则是Linq家族的一员,专门针对XML数据提供了一种简洁、高效的编程接口。本案例将深入探讨Linq to XML的...

    C# LinqXML使用LINQ技术对XML文件进行读取

    在处理XML文档时,LINQ to XML(也称为LinqXML)是一个非常实用的API,它提供了面向对象的方式来创建、操作和读取XML文档。本文将详细介绍如何使用C#的LinqXML技术对XML文件进行读取。 首先,我们需要引入必要的...

    Linq to Xml practise

    **正文** 《LINQ to XML 实践指南》 LINQ(Language Integrated Query,语言集成查询)是.NET Framework中的一项重要技术,它为...通过不断的实践和探索,你将成为使用LINQ to XML的专家,能够自如地驾驭XML数据。

    linq to xml使用xquery

    接下来,我们可以使用LINQ to XML的查询语法来检索XML数据。这类似于SQL查询,但使用C#的语法。例如,获取上面XML文档中所有 "Child" 元素的值,可以这样写: ```csharp var childValues = from child in doc....

    LINQ实战 linq to sql linq to xml 人民邮电出版社

    本书部分介绍了LINQ技术及C#和VB为此提供的新语言特性,第二、三、四部分详细介绍了LINQ的主要功能LINQ to Objects、LINQ to SQL、LINQ to XML,第五部分研究了LINQ的可扩展性、在应用程序中使用各种LINQ功能的方法...

Global site tag (gtag.js) - Google Analytics