У меня есть простой частичный вид, что я рендеринга в моем главном экране с:ASP.Net MVC 3 Частичное страницу вывода Кэширование не чтит Настройки Config
@Html.Action("All", "Template")
На мой контроллер у меня есть это:
[OutputCache(CacheProfile = "Templates")]
public ActionResult All()
{
return Content("This stinks.");
}
И в моей конфигурации это:
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<clear/>
<add name="Templates" duration="3600" varyByParam="none"/>
</outputCacheProfiles>
</outputCacheSettings>
<outputCache enableOutputCache="false" enableFragmentCache="false" />
</caching>
Это произойдет сбой во время выполнения, за исключением:
Ошибка при выполнении запроса ребенка для обработчика «System.Web.Mvc.HttpHandlerUtil + ServerExecuteHttpHandlerAsyncWrapper
И внутреннее исключение:
Продолжительность должна быть положительным числом
сейчас очевидно, что это не подбирает настройки моего web.config, потому что если я изменю его на:
[OutputCache(Duration = 3600)]
Она будет работать, но и заметить в моем web.config я выключил enableOutputCache и enableFragmentCache, но не выполнять эти настройки.
Любопытно, что в нормальном режиме эти настройки работают нормально, так что же это о частичных представлениях, которые нарушают это? Я что-то упускаю? The Gu says this should work just fine... Короче говоря, он должен соблюдать настройки кэширования в web.config, а если нет, почему бы и нет?
Duplicate: http://stackoverflow.com/questions/4728958/chaching-childactions-using-cache-profiles-wont-work – frennky
Они похожи, но я говорю о своей большой проблеме, которая заключается в том, что она не делает Не соблюдайте никаких настроек, например, что выходной кеш отключен. –