Desenvolvimento - ASP. NET
Explorando o ASP.NET 2.0 RSS Toolkit
O RSS Toolkit, veio justamente para facilitar a utilização de RSS dentro do ASP.NET.
por Ramon Durães
Artigo recomendado para Visual Studio 2005; RSSToolkit
O padrão RSS para exportação de conteúdo no formato XML,
tornou-se um dos pilares da Web 2.0 pela facilidade de intercâmbio de
informações entre os mais diversos sites viabilizando a
agregação de informações. O RSS Toolkit, veio justamente para facilitar
a utilização de RSS dentro do ASP.NET. Ele permite tanto expor um conteúdo,
quanto ler uma fonte RSS e por exemplo, fazer um bind direto para um controle
como Gridview usando inclusive um provider RSSDataSource criado
especificamente para esse fim. Gridview .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: Consolas, "Courier New", Courier, Monospace; background-color: #ffffff; /*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt { background-color: #f4f4f4; width: 100%; margin: 0em; } .csharpcode .lnum { color: #606060; } .style2 { font-size: x-small; } 1: <asp:Gridview ID="Gridview1" runat="server" 2: AutoGenerateColumns="False" 3: DataSourceID="RssDataSource1"> 4: <Columns> 5: <asp:HyperLinkField DataNavigateUrlFields="link" 6: DataTextField="title" 7: HeaderText="Blog Ramon Durães" 8: /> 9: </Columns> 10: </asp:Gridview> Figura 04 - Exibindo informações de blog externo. Com as informações chegando de forma tão simples, basta agora configurar os templates e exibir no formato mais adequado ao layout. Pode-se no lugar do Gridview usar outro controle como um Repeater. Dando continuidade,adicione uma nova página e dessa vez um Gridview e um Button. Efetue dois cliques no botão e vamos fazer a implementação manualmente conforme listagem 02. DataBind Manual .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: Consolas, "Courier New", Courier, Monospace; background-color: #ffffff; /*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt { background-color: #f4f4f4; width: 100%; margin: 0em; } .csharpcode .lnum { color: #606060; } 1: protected void Button1_Click(object sender, EventArgs e) 2: {
3: System.Uri url =
4: new Uri("http://blogs.2pc.com.br/ramonduraes/rss.aspx"); 5: RssToolkit.Rss.RssDocument rss =
6: RssToolkit.Rss.RssDocument.Load(url);
7: Gridview1.DataSource = rss.SelectItems();
8: Gridview1.DataBind();
9: }
Listagem 02 - Realizando DataBind Manual Conforme você está observando nesse segundo exemplo, com pouquíssimas linhas de código estamos consumindo um RSS e exibindo no nosso Gridview. Agora chegou o momento de expor um RSS para que possa ser consumido por terceiros. Com RSSToolkit existe várias formas de fazer essa tarefa. Vamos executar um simples exemplo para você ter idéia das funcionalidades. Adicione uma nova página para esse teste (GearRSS.aspx) e adicione as referências e código conforme listagem 03. Retornando XML .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: Consolas, "Courier New", Courier, Monospace; background-color: #ffffff; /*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt { background-color: #f4f4f4; width: 100%; margin: 0em; } .csharpcode .lnum { color: #606060; } 1: using RssToolkit.Rss; 2: using System.Collections.Generic; 3: using System.Xml; 4:
5: protected void Page_Load(object sender, EventArgs e) 6: {
7:
8: //Inicializando RSS 9: RssDocument meurss = new RssDocument(); 10: RssChannel rss = new RssChannel(); 11: rss.PubDate = System.DateTime.Now.ToString();
12: rss.Description = "RSS Ramones"; 13: rss.Title = "Ramon's Rss"; 14: meurss.Channel = rss;
15: meurss.Version = "2.0"; 16:
17: meurss.Channel.Items = new List<RssItem>(); 18:
19: //Adicionando itens 20: RssItem item = new RssItem(); 21: item.Title = "Treinamento AJAX"; 22: item.Description = "CD Treinamento Microsoft Ajax"; 23: item.Link = "~/ajax.aspx"; 24: meurss.Channel.Items.Add(item);
25:
26: item = new RssItem(); 27: item.Title = "WorkShop Visual Studio Team System"; 28: item.Description = "Treinamento VSTS"; 29: item.Link = "~/vsts.aspx"; 30: meurss.Channel.Items.Add(item);
31:
32:
33: //Retornando Stream xml 34: string outputXml = meurss.ToXml(DocumentType.Rss); 35: XmlDocument document = new XmlDocument(); 36: document.LoadXml(outputXml);
37: Response.ContentType = "text/xml"; 38: document.Save(Response.OutputStream);
39: Response.End();
40: }
Listagem 03 - Criando um retorno XML
Ao executar a página de teste com a codificação da listagem 03,
você vai ter o retorno XML necessário para que outras aplicações possam
consumir. |
Código Fonte: [Download] |
Referência: ASP.NET RSS TOOLKIT |
|