Como você recomendaria lidar com RSS Feeds na ASP.NET MVC? Usando uma biblioteca de terceiros? Usando o material RSS no BCL? Apenas fazendo uma visualização RSS que renderiza o XML? Ou algo completamente diferente?
asp.net-mvc
rss
Lance Fisher
fonte
fonte
Respostas:
Aqui está o que eu recomendo:
Depois de alterar o tipo de conteúdo para rss, você desejará serializar os dados em RSS (usando seu próprio código ou outra biblioteca) e escrever na resposta.
Crie uma ação em um controlador que deseja retornar rss e defina o tipo de retorno como RssResult. Pegue os dados do seu modelo com base no que você deseja retornar.
Então, qualquer solicitação para esta ação receberá rss de quaisquer dados que você escolher.
Essa é provavelmente a maneira mais rápida e reutilizável de retornar o rss como uma resposta a uma solicitação na ASP.NET MVC.
fonte
base("application/rss+xml")
e evitar as etapas 3 e 4. Ele substitui ExecuteResult, mas não é vital. Ele também atalhos de um monte de código normalmente-caseira e utiliza os 3.5+ característicasSyndicateItem
,SyndicateFeed
eRss20FeedFormatter
.O .NET framework expõe classes que lidam com sindicação: SyndicationFeed etc. Então, em vez de fazer a renderização você mesmo ou usar alguma outra biblioteca RSS sugerida, por que não deixar o framework cuidar disso?
Basicamente, você só precisa do seguinte ActionResult personalizado e está pronto para começar:
Agora, em sua ação de controle, você pode simplesmente retornar o seguinte:
Há um exemplo completo em meu blog em http://www.developerzen.com/2009/01/11/aspnet-mvc-rss-feed-action-result/
fonte
Eu concordo com Haacked. Atualmente, estou implementando meu site / blog usando a estrutura MVC e optei pela abordagem simples de criar uma nova visualização para RSS:
Para obter mais informações, consulte (plug sem vergonha) http://rickyrosario.com/blog/creating-an-rss-feed-in-asp-net-mvc
fonte
Outra abordagem maluca, mas com sua vantagem, é usar uma visualização normal .aspx para renderizar o RSS. Em seu método de ação, basta definir o tipo de conteúdo apropriado. O único benefício dessa abordagem é que é fácil entender o que está sendo renderizado e como adicionar elementos personalizados, como geolocalização.
Então, novamente, as outras abordagens listadas podem ser melhores, eu apenas não as usei. ;)
fonte
Eu consegui isso de Eran Kampf e um vídeo de Scott Hanselman (esqueci o link), então é apenas um pouco diferente de alguns outros posts aqui, mas espero que seja útil e copie e cole pronto como um feed de rss de exemplo.
Do meu blog
Eran Kampf
E o código do controlador ....
fonte