Я использую OutputCache на действии, как это:Проблема с ASP .Net MVC 2.0 Кэширование
[OutputCache(Duration = 14400, VaryByParam = "none")]
public ContentResult Catalog()
{
return ...;
}
и моя функция RegisterRoutes в Global.asax.cs содержит маршрут:
routes.MapRoute(
"XMLRoute", // Route name
"{site}/catalog.xml", // URL with parameters
new { controller = "Home", action = "Catalog" } // Parameter defaults
);
карты маршрутов URLs нравится:
- example.com/site1/catalog.xml
- пример. ком/site2/catalog.xml
- example.com/whatever/catalog.xml
в каталог действий.
Я считаю, что ожидаемым результатом было бы вернуть статический контент после первого запроса для каждого переданного параметра, но содержимое не кэшируется должным образом. Должен ли я изменить действие «Каталог» для использования параметра, а затем указать VarybyParam = «none» и добавить параметр с UrlParameter.Optional в функции MapRoute или что-то еще происходит здесь?
Можете ли вы уточнить, «содержимое не кэшировано должным образом»? Какие результаты вы видите и как они отличаются от ваших ожиданий? – bzlm
Извините, я должен быть более ясным. Я имею в виду, что контент не извлекается из кеша, который он создается снова для каждого запроса. – gmakrygiannis