Oct 21 2008

C# Añadir icono RSS en la barra de direcciones de nuestro navegador (rss feed icon)

Category: ProgramacionIndigo @ 2:06 PM

Completando mi artículo anterior sobre generar RSS en nuestra pagina ASP.NET ahora veremos que tenemos que añadir nuestra página para que nuestro navegador detecte que se puede sindicar contenido rss.

Para hacer esto tan sólo debemos añadir la siguiente linea a nuestra pagina

[sourcecode language='html'] type="application/rss+xml" rel="alternate">
[/sourcecode]

Si lo quisieramos hacer desde nuestro código, lo haríamos de la siguiente manera

[sourcecode language='csharp']HtmlGenericControl link = new HtmlGenericControl(”LINK”);
link.Attributes.Add(”title”, “Ultimas artículos”);
link.Attributes.Add(”href”, “http://www.microcode.es/feed”);
link.Attributes.Add(”rel”, “alternate”);
link.Attributes.Add(”type”, “application/rss+xml”);
this.Controls.Add(link);[/sourcecode]

Como vemos es bastante fácil…

Tags: , , ,


Oct 20 2008

C# Generar RSS en nuestra pagina ASP.NET (rss feed)

Category: ProgramacionIndigo @ 2:56 PM

Según la wikipediaRSS es un sencillo formato de datos que es utilizado para redifundir contenidos a suscriptores de un sitio web. El formato permite distribuir contenido sin necesidad de un navegador, utilizando un software diseñado para leer estos contenidos RSS (agregador). A pesar de eso, es posible utilizar el mismo navegador para ver los contenidos RSS. Las últimas versiones de los principales navegadores permiten leer los RSS sin necesidad de software adicional.”

El código para generar rss es realmente sencillo y tan sólo debemos escribirlo en el Page_Load de nuestra página:

[sourcecode language='csharp']protected void Page_Load(object sender, EventArgs e)
{
Response.Clear();
Response.ContentType = “text/xml”;
XmlTextWriter xmlTextWrite = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);
xmlTextWrite.WriteStartDocument();
xmlTextWrite.WriteStartElement(”rss”);
xmlTextWrite.WriteAttributeString(”version”,”2.0″);
xmlTextWrite.WriteStartElement(”channel”);
xmlTextWrite.WriteElementString(”title”, “indigo blog rss example.”);
xmlTextWrite.WriteElementString(”link”, “http://www.microcode.es/index.php”);
xmlTextWrite.WriteElementString(”description”, “Ultimas noticias.”);
xmlTextWrite.WriteElementString(”copyright”, “(c) 2008, microcode blog.”);
xmlTextWrite.WriteElementString(”ttl”, “5″);

// Este bucle es el encargado de generar los item del rss. Aquí podríamos a nuestra base de datos para obtener los elementos
// que se quieres mostrar en el rss.
for (int i = 0; i < 5; i++)
{
xmlTextWrite.WriteStartElement(”item”);
xmlTextWrite.WriteElementString(”title”, string.Format(”Title-{0}”, i));
xmlTextWrite.WriteElementString(”description”, string.Format(”Description-{0}”, i));
xmlTextWrite.WriteElementString(”link”, string.Format(”http://www.microcode.es/index.php#{0}”, i));
xmlTextWrite.WriteElementString(”pubDate”, DateTime.Now.ToString(”dd/MM/yyyy HH:mm”));
xmlTextWrite.WriteElementString(”guid”, string.Format(”http://www.microcode.es/index.php#{0}”, i));
xmlTextWrite.WriteEndElement();
}

xmlTextWrite.WriteEndElement();
xmlTextWrite.WriteEndElement();
xmlTextWrite.WriteEndDocument();
xmlTextWrite.Flush();
xmlTextWrite.Close();

Response.End();
}

[/sourcecode]

Saludos.

Tags: , ,