• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 340
  • Last Modified:

RSS Enabling a website

Experts i have my web site written using ASP.NET,C # and now i have a requirement to RSS enable so other vendors can read news off our website and make it RSS feed read capable ( i am not sure if that is the right language) . How an i do that ? How much time it may take to enable a website of about 10 web forms and about 10MB of data ?
0
dotnetpro
Asked:
dotnetpro
1 Solution
 
GiftsonDJohnCommented:
Hi There,

You can enable RSS syndication by writing a small piece of code. Create Feed.aspx and use the following code snippet for generating RSS feeds.

Then you have to include the following tag in your page to enable syndication.

<link rel="alternate" type="application/rss+xml" title="Test RSS Feeds" href="http://www.site.com/Feed.aspx" />

Here you go.


        Response.Clear();
        Response.ContentType = "text/xml";
        XmlTextWriter objX = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);
 
        objX.WriteStartDocument();
        objX.WriteStartElement("rss");
        objX.WriteAttributeString("version", "2.0");
 
        objX.WriteStartElement("channel");
        objX.WriteElementString("title", "RSS Feed for Site");
        objX.WriteElementString("link", "http://www.site.com/TargetPage.aspx");
        objX.WriteElementString("description", "Just a sample RSS Feeds");
        objX.WriteElementString("copyright", "(c) 2009 Copyright information");
        objX.WriteElementString("ttl", "720");       
 
        SqlConnection sqlCon = new SqlConnection(ConfigurationManager.ConnectionStrings["SqlConnectionString"].ConnectionString);
        sqlCon.Open();
 
        string sql = "select top 50 NewsID, Title, url, pubDate, photourl[photo], details  from tblNews";
        SqlCommand sqlCmd = new SqlCommand(sql, sqlCon);
        SqlDataReader sqlRdr = sqlCmd.ExecuteReader();
        if (sqlRdr.HasRows)
        {
            while (sqlRdr.Read())
            {
                objX.WriteStartElement("item");
                objX.WriteStartElement("title");
                objX.WriteCData(sqlRdr["Title"].ToString());
                objX.WriteEndElement();
 
                objX.WriteStartElement("description");
                objX.WriteCData("<table><tr><td rowspan=\"2\"><img src=\"" + sqlRdr.GetString("Photo") + "\" alt=\"" + sqlRdr["Title"].ToString() + "\" width=\"40\" height=\"50\" /><td>" + sqlRdr["Details"].ToString() + "</td></tr><tr><td>Published Date : " + sqlRdr.GetDateTime(3).ToString("dd MMM yyyy") + "</td><td></td></tr><tr><td colspan=\"3\">&nbsp;</td></tr></table>");
                objX.WriteEndElement();
 
                objX.WriteStartElement("link");
                objX.WriteCData(sqlRdr["url"]);
                objX.WriteEndElement();
 
                objX.WriteElementString("pubDate", sqlRdr.GetDateTime(3).ToString("R"));
 
                objX.WriteEndElement();
            }
        }        
        sqlRdr.Close();
        sqlCon.Close();
 
        objX.WriteEndElement();
        objX.WriteEndElement();
        objX.WriteEndDocument();
        objX.Flush();
        objX.Close();
        Response.End();

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now