Установить значение параметра "Выходной кэш страницы" программно

Я хочу использовать значение 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); 
}
Другие вопросы по тегам