homeshopper
asked on
ASP.net , C# & VB Bind a Yahoo RSS Feed to a Gridview
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:
https://www.experts-exchange.com/questions/23438677/ASP-net-C-Bind-a-Yahoo-RSS-Feed-to-a-Gridview.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"/><a dd directoryName="CSCode"/>
I am trying to get code to read from RSS Feed to a GridView in ASP.Net VB & C#
I looked at the following:
https://www.experts-exchange.com/questions/23438677/ASP-net-C-Bind-a-Yahoo-RSS-Feed-to-a-Gridview.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"/><a
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>
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.