本文利用XmlDocument和XPath实现一个简单的RSS阅读器的逻辑,大家都知道,RSS内容,实际就是一个XML文档。
前台的ASPX页面内容
<p> 请输入RSS的URL地址: <asp:TextBox ID="RssUrl" runat="server" Columns="40"></asp:TextBox> <asp:Button ID="Button1" runat="server" Text="加载" onclick="Button1_Click" /> </p> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4" ForeColor="#333333" GridLines="Horizontal" ShowHeader="False"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:TemplateField> <ItemTemplate> <asp:HyperLink Target="_frame" ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("link") %>' Text='<%# Eval("title") %>'></asp:HyperLink> </ItemTemplate> </asp:TemplateField> </Columns> <EditRowStyle BackColor="#2461BF" /> <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" /> <RowStyle BackColor="#EFF3FB" /> <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" /> <SortedAscendingCellStyle BackColor="#F5F7FB" /> <SortedAscendingHeaderStyle BackColor="#6D95E1" /> <SortedDescendingCellStyle BackColor="#E9EBEF" /> <SortedDescendingHeaderStyle BackColor="#4870BE" /> </asp:GridView>
后台的CS代码
XmlDocument xml = new XmlDocument(); xml.Load(this.RssUrl.Text); XmlNodeList nodes = xml.SelectNodes("rss/channel/item"); DataSet ds = new DataSet(); foreach (XmlNode node in nodes) { ds.ReadXml(new XmlNodeReader(node), XmlReadMode.Auto); } this.GridView1.DataSource = ds.Tables[0]; this.GridView1.DataBind();
一个简单的逻辑,呵呵。