Я использую профиль OutputCache для кеширования на сервере некоторых данных json.
[HttpGet]
[OutputCache(CacheProfile = "1HourCacheProfile")]
public JsonResult GetBranches()
{
var result = mMapper.Map<List<IntItem>>(mConfigurationServices.GetBranches());
return Json(new { list = result }, JsonRequestBehavior.AllowGet);
}
Профиль зарегистрирован в Web.config, как показано ниже.
Я хочу каким-то образом привязать логику обновления этого кешированного вывода к различным действиям, обновляющим мой источник. Я нашел какое-то решение, в котором я могу удалить действие из кеша с помощью чего-то вроде ниже, но мне было интересно, есть ли способ использовать какой-либо тип фильтра для обновления всех кешированных элементов моего профиля.
// Get the url for the action method:
var staleItem = Url.Action("Action", "YourController", new
{
Id = model.Id,
area = "areaname";
});
// Remove the item from cache
Response.RemoveOutputCacheItem(staleItem);