Динамический RSS-канал в c #

Как лучше всего создать динамический RSS-канал? В настоящее время я закодировал функцию, которая может создавать статический файл, но мне просто любопытно, каким будет лучший способ запуска этого в определенное время / дни? Например, я создаю RSS-канал, в котором перечислены все элементы, которые происходят сегодня, и я хотел бы, чтобы он был заполнен в 0:01. У меня также есть еще один RSS-канал, который я написал, в котором перечислены следующие элементы, которые должны произойти.

Просто для пояснения, я уже создал функцию для создания фидов, я просто ищу хороший способ запланировать запуск этого процесса на регулярной, определяемой основе.

Я программирую на C # на платформе .net 3.5 в VS 2008.

@John - Я использую WebForms, и у меня действительно нет веской причины не писать это просто так, я просто создал статические каналы, потому что это то, что я знал, как это сделать.


person Daryl    schedule 20.05.2009    source источник
comment
Почему вы планируете элементы вместо того, чтобы в фиде просто отображались последние X самых последних на момент получения фида? Кроме того, ASP.NET MVC или веб-формы?   -  person John Sheehan    schedule 20.05.2009


Ответы (3)


Как насчет использования для этого запланированных задач?

person Sam Saffron    schedule 20.05.2009
comment
Выглядит неплохо, но будет ли это работать на моем веб-сервере? Похоже, это для локальных / сетевых машин. Я также подумал о том, чтобы просто создавать вызов веб-службы всякий раз, когда загружаются страницы, но существует так много мест, где будут использоваться эти каналы, что они могут создавать исключения нарушения доступа из нескольких попыток доступа к файлу, который уже изменяется. - person Daryl; 20.05.2009
comment
Тогда не давайте прямой доступ к файлу, сделайте это через aspx, который возвращает кешированный файл, защищенный семафором, пока он создается. - person jmservera; 20.05.2009

Если у вас есть доступ к планировщику Windows, создайте для этого сценарий. В противном случае я бы создал его при первом обращении к странице после 12:01, а затем использовал бы метод кеширования для последующих вызовов.

person jmservera    schedule 20.05.2009

Вы можете сделать это гораздо более простым способом.

Просто реализуйте файловый кеш в своем обработчике. Установите имя файла в качестве даты создания xml и проигнорируйте файл по истечении желаемого времени. Первый запрос к rss после аннулирования получит данные из вашей базы данных.

person Kerem Demirer    schedule 02.12.2013