Как вы порекомендуете обрабатывать RSS-каналы в ASP.NET MVC? Используете стороннюю библиотеку? Используете RSS в BCL? Просто создаете представление RSS, которое отображает XML? Или что-то совсем другое?
asp.net-mvc
rss
Лэнс Фишер
источник
источник
Ответы:
Вот что я рекомендую:
После изменения типа контента на rss вы захотите сериализовать данные в RSS (используя свой собственный код или другую библиотеку) и написать в ответ.
Создайте действие на контроллере, который вы хотите вернуть rss, и установите тип возвращаемого значения как RssResult. Возьмите данные из своей модели на основе того, что вы хотите вернуть.
Тогда любой запрос к этому действию получит rss любых выбранных вами данных.
Это, вероятно, самый быстрый и многоразовый способ возврата rss в ответ на запрос в ASP.NET MVC.
источник
base("application/rss+xml")
и избежать шагов 3 и 4. Он действительно переопределяет ExecuteResult, но это не жизненно важно. Он также сокращает множество типичных доморощенных кодов и использует функции 3.5+SyndicateItem
,SyndicateFeed
иRss20FeedFormatter
.Платформа .NET предоставляет классы, которые обрабатывают синдикацию: SyndicationFeed и т. Д. Итак, вместо того, чтобы выполнять рендеринг самостоятельно или использовать другую предложенную библиотеку RSS, почему бы не позволить структуре позаботиться об этом?
По сути, вам просто нужен следующий настраиваемый ActionResult, и вы готовы к работе:
Теперь в действии вашего контроллера вы можете просто вернуть следующее:
В моем блоге есть полный образец по адресу http://www.developerzen.com/2009/01/11/aspnet-mvc-rss-feed-action-result/
источник
Я согласен с Хаакедом. В настоящее время я реализую свой сайт / блог, используя структуру MVC, и я выбрал простой подход создания нового представления для RSS:
Для получения дополнительной информации посетите (бесстыдный плагин) http://rickyrosario.com/blog/creating-an-rss-feed-in-asp-net-mvc
источник
Еще один безумный подход, но имеющий свое преимущество, заключается в использовании обычного представления .aspx для отображения RSS. В вашем методе действия просто установите соответствующий тип контента. Одним из преимуществ этого подхода является то, что легко понять, что отображается и как добавлять пользовательские элементы, такие как геолокация.
Опять же, другие перечисленные подходы могут быть лучше, просто я их не использовал. ;)
источник
Я получил это от Эрана Кампфа и видеоролика Скотта Хансельмана (забыл ссылку), поэтому он немного отличается от некоторых других сообщений здесь, но, надеюсь, полезен и готов для копирования и вставки в качестве примера RSS-канала.
Из моего блога
Эран Кампф
И код контроллера ....
источник