如何避免Global.asax进行'VaryByCustom'缓存

时间:2012-10-24 12:38:36

标签: asp.net caching outputcache

我正在撰写自定义HttpModule,我需要使用:

Response.Cache.SetVaryByCustom("role");

基本上,我需要根据用户的会员角色缓存响应。我的所有研究都指向了这个页面:

http://msdn.microsoft.com/en-us/library/5ecf4420(v=vs.100).aspx

在Global.asax中覆盖GetVaryByCustomString的地方。

有没有办法可以避免在global.asax中这样做?让我们假设我正在构建一个收缩包装的应用程序。

1 个答案:

答案 0 :(得分:0)

为什么“shrinkwrapped”应用程序排除了Global.asax?

试试这个:

    public override string GetVaryByCustomString(HttpContext context, string custom)
    {
        if (custom == "role")
            return Roles.GetRolesForUser().Aggregate((a,b) => a = a+b);
    }