Как создать rss-канал в ASP.Net? Есть ли что-нибудь встроенное для поддержки? Если нет, какие сторонние инструменты доступны?
Я думаю, что веб-формы, а не MVC, хотя я полагаю, что это не традиционная страница, разница может быть минимальной.
Как создать rss-канал в ASP.Net? Есть ли что-нибудь встроенное для поддержки? Если нет, какие сторонние инструменты доступны?
Я думаю, что веб-формы, а не MVC, хотя я полагаю, что это не традиционная страница, разница может быть минимальной.
Для встроенного приложения ничего не мешает вам использовать XmlDocument или XDocument (3.5) для создания необходимого XML для RSS. Это больше работает, чем стоит.
Я использую Argotic Syndication Framework и обслуживаю каналы через Generic Handlers (.ashx) с типом контента, установленным в text/xml.
RSSToolkit тоже приятно. Он поставляется с элементом управления RSSDataSource, если вы занимаетесь подобным делом. Он также включает элемент управления, который автоматически вставляет метатег, необходимый для автоматического обнаружения фида в браузерах. Я нашел, что поставщик сборки для создания фидов был немного kludgey.
В .NET Framework 3.5 добавлен класс SyndicationFeed, который позволяет создавать и/или потреблять каналы в форматах Atom 1.0 и RSS 2.0.
Здесь RSS-система, созданная разработчиком Microsoft: ASP.NET RSS Toolkit
Используйте одну из библиотек, доступных для генерации фактического RSS. Например: http://www.rssdotnet.com/
Если вы проверите страницу примеров кода внизу: http://www.rssdotnet.com/documents/code_examples.html вы найдете код для очистки типа контента на странице ASP.net и вывода RSS.
Что-то вдоль строк (не проверено, не скомпилировано, просто набрано):
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();
}
Надеюсь, что это поможет.
Вы можете взглянуть на Argotic. Это действительно классная рамка.
Взгляните на некоторый код, который я дал в другом question, здесь, в SO.
Здесь отличный учебник, точно названный "Как создать фид синдикации для вашего сайта", http://dotnetslackers.com/articles/aspnet/How-to-create-a-syndication-feed-for-your-website.aspx
Создайте обработчик HTTP для создания RSS-канала