How To Create a Simple RSS reader Client




RSSClient.cs


/// <summary>
/// Summary description for RSSClient
/// </summary>
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;

public class RSSClient
{
private DataSet m_ds = null;
public DataSet GetRSSDataSet()
{
if (m_ds == null)
{
System.Xml.XmlTextReader oXml = null;
m_ds = new DataSet();
try
{
oXml = new System.Xml.XmlTextReader(m_strAdress);
m_ds.ReadXml(oXml, System.Data.XmlReadMode.Auto);
}
catch
{
m_ds = null;
}
if (oXml != null)
oXml.Close();
}
return m_ds;
}
public DataTable Items
{
get
{
DataSet ds = GetRSSDataSet();
if (ds == null)
return null;
foreach (DataTable dt in ds.Tables)
if (dt.TableName.ToUpper() == "ITEM")
return dt;
return null;

}
}

public DataTable Channel
{
get
{
DataSet ds = GetRSSDataSet();
if (ds == null)
return null;
foreach (DataTable dt in ds.Tables)
if (dt.TableName.ToUpper() == "CHANNEL")
return dt;
return null;

}
}

public DataTable GUID
{
get
{
DataSet ds = GetRSSDataSet();
if (ds == null)
return null;
foreach (DataTable dt in ds.Tables)
if (dt.TableName.ToUpper() == "GUID")
return dt;
return null;

}
}


public DataTable RSS
{
get
{
DataSet ds = GetRSSDataSet();
if (ds == null)
return null;
foreach (DataTable dt in ds.Tables)
if (dt.TableName.ToUpper() == "RSS")
return dt;
return null;

}
}

private string m_strAdress;
public RSSClient(string sAddress)
{
m_strAdress = sAddress;
}

}


Default.aspx



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


<!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>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="RSS Feed url"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server"
Width="450px">http://newsrss.bbc.co.uk/rss/newsonline_world_edition/front_page/rss.xml</asp:TextBox>
&nbsp;
<asp:Button ID="Button1" runat="server" Text="Get"
OnClick="Button1_Click" /><br />
<br />
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
</div>
</form>
</body>
</html>


using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
RSSClient oRSSClient = new RSSClient( TextBox1.Text );
GridView1.DataSource = oRSSClient.Items;
GridView1.DataBind();

}
}

No comments:

Post a Comment