Я пытаюсь следовать некоторым инструкциям, которые я нашел в Интернете, чтобы реализовать кэширование вывода для episerver.
В моем файле web.config я настроил следующее:
<caching>
<outputCache enableOutputCache="true">
</outputCache>
<outputCacheSettings>
<outputCacheProfiles>
<add name="ClientResourceCache" enabled="true" duration="3600" varyByParam="*" varyByContentEncoding="gzip;deflate" />
</outputCacheProfiles>
</outputCacheSettings>
</caching>
КакВ тесте я выбрал StartPageController.cs и добавил тег [ContentOutputCache]
примерно так:
[ContentOutputCache]
public class StartPageController : PageControllerBase<StartPage>
{
public ActionResult Index(StartPage currentPage)
{
var model = PageViewModel.Create(currentPage);
if (SiteDefinition.Current.StartPage.CompareToIgnoreWorkID(currentPage.ContentLink))
{
var editHints = ViewData.GetEditHints<PageViewModel<StartPage>, StartPage>();
editHints.AddConnection(m => m.Layout.Logotype, p => p.SiteLogotype);
editHints.AddConnection(m => m.Layout.Footer, p => p.FooterBlock);
}
return View(model);
}
}
}
Затем в инструкциях говорится:
В какой-то момент загрузки страницы вам нужнодобавить следующий код:
public void SetResposneHeaders () {HttpContext.Current.Response.Cache.SetExpires (DateTime.Now.AddMinutes (2.0));HttpContext.Current.Response.Cache.SetCacheability (HttpCacheability.Public);HttpContext.Current.Response.Cache.SetValidUntilExpires (истина);}
Из-за моего ограниченного знания .NET, MVC и т. Д. Эта часть меня смущает, так как я не уверен, в каком файле ее разместить и где?Это идет в StartPageController.cs?Или где-то еще?
Буду признателен за любые указатели.
Инструкции, которым я пытаюсь следовать: здесь .