Feed RSS ASP.Net
Pergunta
Como faço para criar um feed RSS em ASP.Net?Existe algo embutido para apoiá-lo?Caso contrário, quais ferramentas de terceiros estão disponíveis?
Estou pensando em webforms, não em MVC, mas suponho que, como esta não é uma página tradicional, a diferença pode ser mínima.
Solução
Para integrado, nada impede você de usar XmlDocument ou XDocument (3.5) para construir o XML necessário para RSS.É mais trabalho do que vale a pena.
Eu uso o Estrutura de distribuição argótica e veicular os feeds por meio de manipuladores genéricos (.ashx) com o tipo de conteúdo definido como text/xml.
O Kit de ferramentas RSS também é legal.Ele vem com um controle RSSDataSource se você gosta desse tipo de coisa.Ele também inclui um controle que inserirá automaticamente a meta tag necessária para a descoberta automática de feeds nos navegadores.No entanto, achei o provedor de compilação para a criação de feeds um pouco complicado.
Outras dicas
O .NET Framework 3.5 adicionou uma classe SyndicationFeed que permite criar e/ou consumir feeds nos formatos Atom 1.0 e RSS 2.0.
Aqui está uma estrutura RSS criada por um desenvolvedor da Microsoft: Kit de ferramentas RSS do ASP.NET
Use uma das bibliotecas disponíveis para gerar o RSS real.Por exemplo: http://www.rssdotnet.com/
Se você verificar a página de exemplos de código na parte inferior:http://www.rssdotnet.com/documents/code_examples.htmlvocê encontrará o código para limpar o tipo de conteúdo em uma página ASP.net e gerar o RSS.
Algo como (não testado, não compilado, apenas digitado):
public void PageLoad()
{
// create channel
RssChannel _soChannel = new RssChannel();
// create item
RssItem _soItem = new RssItem();
_soItem.Title = "Answer";
_soItem.Description = "Example";
_soItem.PubDate = DateTime.Now.ToUniversalTime();
// add to channel
_soChannel.Items.Add(_soItem.);
// set channel props
_soChannel.Title = "Stack Overflow";
_soChannel.Description = "Great site.. jada jada jada";
_soChannel.LastBuildDate = DateTime.Now.ToUniversalTime();
// change type and send to output
RssFeed _f = new RssFeed();
_f.Channels.Add(channel);
Response.ContentType = "text/xml";
_f.Write(Response.OutputStream);
Response.End();
}
Espero que ajude.
Você poderia dar uma olhada em Argotic.É uma estrutura muito legal.
Crie um manipulador HTTP para criar um feed RSS