Consumindo RSS de notícias em uma aplicação .NET

 

Bem, um RSS nada mais que um arquivo xml com um layout predefinido. Então podemos simplesmente fazer a leitura desse arquivo xml e apresentar em uma grid. Então crie uma nova aplicação Asp.Net Web Application e Salve como RSS. Pegue um componente DataGrid da paleta Web Controls. Clique no Criador de Propriedades (Ao final do Object Inscpector). Clique em Colunas. Desmarque a opção “Criar colunas automaticamente durante a execução”.

Selecione “Coluna Hiperlink” e coloque nas selecionadas, clicando no botão >. Preencha o “Campo de texto” com title. Preencha o “Campo do URL” com link. Preencha o campo “Destino” com _blank.

 

Figura 1.

Agora, no Object Inscpector, selecione o objeto TWebForm1 e clique na aba eventos. No evento Load colocaremos o código à seguir:

 

var

  ds: Dataset;

begin

  if Not Page.IsPostBack then

  try

    ds := DataSet.Create;

    ds.ReadXml('http://info.abril.com.br/aberto/infonews/rssnews.xml');

    DataGrid1.DataSource := ds.Tables[3];

    DataGrid1.DataBind();

    ds.Free;

  except

    Response.Write('Erro: Rss não encontrado');

  end;

end;

 

Com isso você já pode compilar e testar. Nesse código estamos abrindo o RSS da Info Exame. Pensando que podemos querer ver vários RSS, podemos modificar nosso código para obter o endereço do RSS em um campo de consulta enviado juntamente com o link. Para tanto altere a linha:

 

ds.ReadXml('http://info.abril.com.br/aberto/infonews/rssnews.xml');

 

Para:

 

ds.ReadXml(Request.QueryString['RSS']);

 

Agora compile e no endereço informe dessa maneira:

 

http://localhost/RSS/WebForm1.aspx?RSS=http://info.abril.com.br/aberto/infonews/rssnews.xml

 

Ou seja, agora temos um campo de consulta, chamado RSS que informa o que queremos abrir. Assim podemos fazer vários link diferentes, usando o mesmo aplicativo.