Sitefinity MVC Feather Widgets - предотвращение кеширования
Я использую пакет пера и создаю виджеты пера для Sitefinity 9.1. Я не могу переопределить кэш вывода для виджетов, используя атрибут OutputCache: [OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")]
, Я не хочу отключать кэширование на уровне страницы, просто на уровне виджета. Как отключить кеширование на уровне виджетов в Sitefinity?
1 ответ
Лучше делать это на стороне клиента, особенно если учесть, что команда Sitefinity делает именно это в виджете перьев "Статус входа", который не должен выводиться в кеше:
Представление содержит два элемента div, которые изначально скрыты и отображаются с помощью javascript на клиенте в зависимости от статуса пользователя (который извлекается с помощью веб-службы):
Код JS:
РЕДАКТИРОВАТЬ: То, что вы можете попробовать, это подписаться на событие PageManager.Executing и посмотреть, была ли страница, которая была изменена, вашей родительской / групповой страницы. Если это так, то вы можете получить все его дочерние страницы (PageData) с помощью API и увеличить их свойство BuildStamp с 1. Это сделает их кеш недействительным. Более подробная информация здесь: http://docs.sitefinity.com/tutorial-subscribe-to-events-using-dataprovider-or-manager-class