7

我想为我将支持的 VaryByCustom 参数类型使用 Enum 值,是否可以这样做?

我尝试在页面本身中设置它

<%@ OutputCache Duration="600" VaryByParam="none" 
            VaryByCustom='<%=VaryByCustomType.IsAuthenticated.ToString(); %>' %>

但这返回了"<%=VaryByCustomType.IsAuthenticated.ToString(); %>"我里面的整个文字字符串global.asax,有没有办法在页面本身或代码隐藏中做到这一点?或者这只是我必须接受的纯粹是魔术字符串,而我无法为它添加类型安全性?

4

1 回答 1

8

不要使用@Outputcache 指令,而是尝试在页面中使用代码。例如

void Page_Init() {
    var outputCacheSettings = new OutputCacheParameters() {
        Duration = 600,
        VaryByCustom = VaryByCustomType.IsAuthenticated.ToString()
    };
    InitOutputCache(outputCacheSettings); 
}
于 2010-04-27T20:02:44.203 回答