среда, 31 августа 2016 г.

Очистка кэша в приложении ASP.Net MVC

Пришлось для приложения asp.net mvc поискать решение для очистки кэша, реализуемого платформой.

Например, такого:

[OutputCache(CacheProfile = CacheHelper.DefaultCacheProfile)]
public ActionResult Index()
{
    var model = new HomeViewModel();
    return View(model);
}

Решение искал долго. Очистку кэша необходимо выполнить для каждой страницы:

Response.Cache.SetNoStore();
Response.Cache.SetNoServerCaching();

foreach (var item in SessionHelper.SiteMap)
{
    HttpResponse.RemoveOutputCacheItem(item.Url);
}