Click here to Skip to main content

How to bind RSS feeds to a GridView

Sample Image - GridView_RSS.jpg


RSS-Feeds are great to stay informed about recent changes in your favorite websites. But it is quiet hard to read the XML documents for humans. So, I will show how you can bind RSS feeds (for example, the newest articles on CodeProject) to a GridView.

The GridView

First, create a new aspx file and drop a GridView to the form. Next, turn off "Auto generate fields" from the GridView properties. Last, create a Template field for the hyperlink to the article and a bound field for the description. Here is the code:

 <form id="form1" runat="server">
   <asp:GridView ID="GridView1" runat="server" 
       <asp:TemplateField HeaderText="Title">
          <a href=<%# Eval("link") %> 
            target=_blank><%# Eval("title") %></a>
       <asp:BoundField DataField="description" 
           HeaderText="Description" />

Now, you can copy the code for the GridView as many times you need it. Maybe a GridView for aspalliance as well.

The code behind

Import the namespace System.Data and create the Page_Load event. Then, call the function BindGrid for every RSS-feed you will display on your web page. The function BindGrid needs three parameters:

  • the string pointing to the URL of the news feed
  • the GridView object that will display the news
  • and an integer indicating which part of the feed will be bound
Imports System.Data
Partial Class _Default
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, _
              ByVal e As System.EventArgs) Handles Me.Load
        BindGrid("" & _ 
                 "webservices/articlerss.aspx", _
                 GridView1, 3)
        BindGrid("", _
                 GridView2, 2)
    End Sub
    Sub BindGrid(ByVal strRss As String, ByVal oGrid _
                 As GridView, ByVal iTable As Integer)
        Dim oDs As New DataSet
        oGrid.DataSource = oDs.Tables(iTable)
    End Sub
End Class

BindGrid creates a new DataSet object and reads the feed using ReadXml. Then the XML document is bound to the GridView. You can also find an online example here: How to bind RSS feeds to a GridView.

Web03 | 2.8.160204.4 | Advertise | Privacy
Copyright © CodeProject, 1999-2016
All Rights Reserved. Terms of Service