Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

ASP.net , C# & VB Bind a Yahoo RSS Feed to a Gridview

Posted on 2008-10-17
1
Medium Priority
?
1,193 Views
Last Modified: 2013-12-17
Hi,
I am trying to get code to read from RSS Feed to a GridView in ASP.Net VB & C#
I looked at the following:
http://www.experts-exchange.com/Programming/Languages/C_Sharp/Q_23438677.html
I have made some alterations to the existing, but am still getting errors.
I have the c# code in App_Code folder CSCode
VB code in App_Code folder VBCode
and referenced the folders in Web.config as follows:
<codeSubDirectories><add directoryName="VBCode"/><add directoryName="CSCode"/>
C# Code First:
using System;
using System.Data;
using System.Data.SqlClient;
using System.Web.Configuration;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
public partial class rssCS : System.Web.UI.Page
{
 
    protected void Page_Load(object sender, EventArgs e)
    {
        GridView.DataSource = GetDataSet().Tables[3];
        GridView.DataBind();
    }
    private DataSet GetDataSet()
        
    {
        DataSet ds = new DataSet("rsRSS");
        ds.ReadXml("http://rss.news.yahoo.com/rss/mostviewed");
        GridView.DataMember = "item";
        GridView.DataSource = ds;
        //GridView1.DataBind();
        return ds;
    }
 
 
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        GridViewRow row = e.Row;
        DateTime CurrTime = DateTime.Now.Date;
 
        if (row.RowIndex >= 0) // Start looping on the first row
            if (row.RowType == DataControlRowType.DataRow)
            {
                row.Cells[0].Text = row.Cells[0].Text;
                row.Cells[1].Text = row.Cells[1].Text;
            }
 
        }
 
 
}
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="~/App_Code/CSCode/FeedRss.aspx.cs" Inherits="rssCS" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Web.Configuration" %>
<%@ Import Namespace="System.Collections" %>
<%@ Import Namespace="System.Collections.Generic" %>
<%@ Import Namespace="System.Linq" %>
<%@ Import Namespace="System.Web" %>
<%@ Import Namespace="System.Web.UI" %>
<%@ Import Namespace="System.Web.UI.WebControls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>FeedRss</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:GridView
        id="GridView"
        DataSourceId="srcMovies"
        Runat="server" />
        <ItemTemplate>
        <asp:HyperLink ID="HyperLink1" NavigateUrl=<%#DataBinder.Eval(Container.DataItem,"link") %> 
        runat="server">
        <%#DataBinder.Eval(Container.DataItem,"title") %>
        </asp:HyperLink>
        </ItemTemplate>
        </asp:GridView>
<!--
     See TextFile.txt
-->
    <asp:SqlDataSource
        id="srcMovies"
        ConnectionString="Data Source=.\SQLExpress;
            AttachDbFilename=|DataDirectory|MyDatabase.mdf;
            Integrated Security=True;User Instance=True"
        SelectCommand="SELECT * FROM Movies"
        Runat="server" />
    </div>
    </form>
</body>
</html>
VB CODE:
Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports System.Web.Configuration
Imports System.Collections
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Xml
 
Namespace AspNetUnleased.Samples
    Public Class rssVB
        Public Sub New()
 
            Dim myXMLDOC As New XmlDocument()
            myXMLDOC.Load("http://www.builderau.com.au/feeds/features.htm")
 
            Dim xmlNode As System.Xml.XmlNode
            Dim xmllist As XmlNodeList
            xmllist = myXMLDOC.SelectNodes("rss/channel/item")
            For Each xmlNode In xmllist
                Dim titlenode As XmlNode
                Dim linknode As XmlNode
                titlenode = xmlNode.SelectSingleNode("title")
                linknode = xmlNode.SelectSingleNode("link")
                Dim myhyperlink As New HyperLink
                myhyperlink.NavigateUrl = linknode.InnerText
                myhyperlink.Text = titlenode.InnerText & "<br/><br/>"
                myhyperlink.Attributes.Add("style", "color:#336699;font-size:12px;font-family:Arial;a:hover{color:red;background-color:yellow}")
                Dim placeholder1
                placeholder1.Controls.Add(myhyperlink)
            Next
        End Sub
 
    End Class
End Namespace
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="~/App_Code/VBCode/FeedRss.aspx.vb" Inherits="rssVB" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Web.Configuration" %>
<%@ Import Namespace="System.Collections" %>
<%@ Import Namespace="System.Collections.Generic" %>
<%@ Import Namespace="System.Linq" %>
<%@ Import Namespace="System.Web" %>
<%@ Import Namespace="System.Web.UI" %>
<%@ Import Namespace="System.Web.UI.WebControls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>FeedRss</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:GridView
        id="GridView"
        DataSourceId="srcMovies"
        Runat="server" />
        <ItemTemplate>
        <asp:HyperLink ID="HyperLink1" NavigateUrl=<%#DataBinder.Eval(Container.DataItem,"link") %> 
        runat="server">
        <%#DataBinder.Eval(Container.DataItem,"title") %>
        </asp:HyperLink>
        </ItemTemplate>
        </asp:GridView>
<!--
     See TextFile.txt
-->
 
    <asp:SqlDataSource
        id="srcMovies"
        ConnectionString="Data Source=.\SQLExpress;
            AttachDbFilename=|DataDirectory|MyDatabase.mdf;
            Integrated Security=True;User Instance=True"
        SelectCommand="SELECT * FROM Movies"
        Runat="server" />
    </div>
    </form>
</body>
</html>

Open in new window

0
Comment
Question by:homeshopper
1 Comment
 

Accepted Solution

by:
homeshopper earned 0 total points
ID: 22811775
Please close this question
0

Featured Post

Become an Android App Developer

Ready to kick start your career in 2018? Learn how to build an Android app in January’s Course of the Month and open the door to new opportunities.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

SASS allows you to treat your CSS code in a more OOP way. Let's have a look on how you can structure your code in order for it to be easily maintained and reused.
This article shows how to deploy dynamic backgrounds to computers depending on the aspect ratio of display
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
Suggested Courses

571 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question