У меня есть сайт, на котором есть обработчик (реализует IHttpHandler
), который используется для создания динамических таблиц стилей. Он делает это, получая код цвета HTML из сеанса (на основе организации, частью которой является пользователь), и используя некоторый код (DotLess) для создания таблицы стилей с этим цветом, установленным в разных местах.Как кэшировать HttpHandler на основе переменной сеанса
Учитывая, что шаблон редко меняется, я решил, что кэширование в порядке, но я, конечно, должен сделать кеш зависимым от цвета, который я получаю вне сеанса.
Есть ли простой способ сделать выходное кэширование на основе этого значения? Я знаю, что могу сделать это на основе querystring и других вещей, но не уверен, что это можно сделать с таким значением сеанса. Другой альтернативой, конечно же, является создание моего собственного кода кеширования, но я бы не стал изобретать колесо ...
Да, думая о том, что вы сказали о выходе кэширования, прежде чем оно попадет в обработчик, имеет смысл, что вы не можете сделать это из самого обработчика. Я могу только надеяться, хотя ... :) – Chris
Есть способы сделать это в .NET 4.0 - внедрение специализированного поставщика кэширования вывода ... но это WAY overkill по сравнению со статическим словарем. – Haney
Да, это определенно излишне, но интересная мысль, чтобы рассмотреть, если мне это нужно в будущем. – Chris