使用linq to xml 快速创建RSS

文/ziie  出处/博客园

首先引用网络上不知道是谁的一段文字来讲述下什么是linq to xml 如果已经熟悉的就直接跳过这段:

LINQ to XML 是一种启用了 LINQ 的内存 XML 编程接口,使用它,可以在 .NET Framework 编程语言中处理 XML。

  它将 XML 文档置于内存中,这一点很像文档对象模型 (DOM)。 您可以查询和修改 XML 文档,修改之后,可以将其另存为文件,也可以将其序列化然后通过网络发送。 但是,LINQ to XML 与 DOM 不同: 它提供一种新的对象模型,这是一种更轻量的模型,使用也更方便,这种模型利用了 Visual C# 2008 在语言方面的改进。

  LINQ to XML 最重要的优势是它与 Language-Integrated Query (LINQ) 的集成。 由于实现了这一集成,因此,可以对内存 XML 文档编写查询,以检索元素和属性的集合。 LINQ to XML 的查询功能在功能上(尽管不是在语法上)与 XPath 和 XQuery 具有可比性。 Visual C# 2008 集成 LINQ 后,可提供更强的类型化功能、编译时检查和改进的调试器支持。

  通过将查询结果用作 XElement 和 XAttribute 对象构造函数的参数,实现了一种功能强大的创建 XML 树的方法。 这种方法称为“函数构造”,利用这种方法,开发人员可以方便地将 XML 树从一种形状转换为另一种形状。

  LINQ to XML 提供了改进的 XML 编程接口,这一点可能与 LINQ to XML 的 LINQ 功能同样重要。 通过 LINQ to XML,对 XML 编程时,您可以实现任何预期的操作,包括:

·                                  从文件或流加载 XML。

·                                  将 XML 序列化为文件或流。

·                                  使用函数构造从头开始创建 XML。

·                                  使用类似 XPath 的轴查询 XML。

·                                  使用 Add、Remove、ReplaceWith 和 SetValue 等方法对内存 XML 树进行操作。

·                                  使用 XSD 验证 XML 树。

·                                  使用这些功能的组合,可将 XML 树从一种形状转换为另一种形状。



好了,我开始废话,首先说一下呢,我技术平平,写出来的文章自然也是不怎么高水平的,但是都是我自己实际项目中总结出来的。

现在言归正传说我们的正题

首先我们创建一个新窗体,这里以我的网站为例,我们起名叫Rss.aspx

创建完成后,如果Rss数据源是XML实际文档,就跳过下面一步,如果Rss数据源是aspx文件

请在创建完新页面后切换到源视图

保留这一行:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Rss.aspx.cs" Inherits="Rss" %>

其余的html代码全部删除

然后在cs里创建方法createRss()

具体看代码和注释:
Code
好了,这个样子就完成了,看我们的linq多么强大!呵呵

如果有错误还请大家指正,不明白的地方请提出来大家讨论

演示地址:http://www.pin5i.com/tools/rss.aspx

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [Linq] 的这些文章也感兴趣:

在Linq to Sql中使用记录的时间戳进行检测管理并发更新时的冲突  LINQ体验(11)——LINQ to SQL语句之Null语义和String/DateTime方法
LINQ to SQL 辅助工具  深入浅出学Linq:Linq to SQL How do I(1)
LINQ to SQL公共基类  .Net Compact Framework 3.5对Linq的支持
LINQ体验(3)——C# 3.0新语言特性和改进(下篇)  Creating custom LINQ provider using LinqExtender
LINQ体验(16)——LINQ to SQL语句之DataContext  LINQ的演变及其对C# 设计的影响
扩展LINQ to SQL以支持批量删除  LINQ 从数据库读数据生成 XML
LINQ To SQL中使用继承(附源码)  深入浅出学Linq:Linq to SQL How do I(2)
深入浅出学Linq:Linq to SQL感性认识篇  LINQ体验(2)——C# 3.0新语言特性和改进(上篇)
深入浅出学Linq:Linq to SQL How do I(4)  Is it time to abandon loops?
Presentation: Erik Meijer on C# 3.0 and LINQ  Jimmy Nilsson谈LINQ to SQL