Solved

RSS Enabling a website

Posted on 2009-04-07
1
310 Views
Last Modified: 2012-05-06
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
Comment
Question by:dotnetpro
1 Comment
 
LVL 14

Accepted Solution

by:
GiftsonDJohn earned 250 total points
ID: 24089161
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

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

IntroductionWhile developing web applications, a single page might contain many regions and each region might contain many number of controls with the capability to perform  postback. Many times you might need to perform some action on an ASP.NET po…
Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

820 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