Установить значение параметра "Выходной кэш страницы" программно
Я хочу использовать значение Enum для типов параметров VaryByCustom, которые я буду поддерживать, возможно ли это сделать?
Я попытался установить его на самой странице
<%@ OutputCache Duration="600" VaryByParam="none"
VaryByCustom='<%=VaryByCustomType.IsAuthenticated.ToString(); %>' %>
Но это вернуло всю буквальную строку "<%=VaryByCustomType.IsAuthenticated.ToString(); %>"
внутри моего global.asax
Есть ли способ сделать это либо на самой странице или из кода? Или это просто то, что я должен принять, это чисто волшебные строки, и я ничего не могу сделать, чтобы повысить безопасность типов?
1 ответ
Решение
Вместо использования директивы @Outputcache, попробуйте сделать это с кодом на странице. например
void Page_Init() {
var outputCacheSettings = new OutputCacheParameters() {
Duration = 600,
VaryByCustom = VaryByCustomType.IsAuthenticated.ToString()
};
InitOutputCache(outputCacheSettings);
}