有没有办法将 ASP.NET Outputcache 用于两者的页面:
- VaryByContentEncoding - 浏览器是否支持 gzip
- 通过自定义参数,在我的情况下,我使用 HttpContext.Current.Request.UserLanguages 获得的国家/地区;并从我的函数返回的文化中获取 TwoLetterISORegionName。
对于某些国家/地区,我返回相同的页面但稍作修改,但我仍然希望将它们单独缓存,以便来自不同国家/地区的访问者看到不同的社交按钮。当然,是否支持 gzip 很重要,因为如果浏览器支持 gzip 压缩,我会使用 gzip 渲染 js 和 css 标签。
更新:我考虑过使用varybycontrol,并将国家 + gzip 状态(o 或 1)都放入一个字符串中并将它们写入一个隐藏字段,然后告诉 .net 进行 varybycontrol 并传递该隐藏字段控件的 ID。不过,我不确定这种方法。
谢谢。