仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 922|回复: 8
打印 上一主题 下一主题

[学习教程] ASP.NET网页编程之依据自界说字符串来缓存(部分)页面

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:36:12 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
可怜的程序员,还是逃不出移植的命运!缓存|页面|字符串好比说网站有一个Header.ascx用户控件,每一个页面都挪用此控件作为"页面头部",间接能够缓存此用户控件就能够提交功能,不外,如今此Header.ascx用户控件要显现上岸用户的上岸名,以是,就不克不及间接用上面这类缓存体例:
<%@OutputCacheDuration="86400"VaryByParam="None"%>
这个时分就能够使用"依据自界说字符串来缓存页"这类办法了,详细以下:
<%@OutputCacheDuration="86400"VaryByParam="None"VaryByCustom="HeaderPageKey"%>
然后在Global类内里重写办法GetVaryByCustomString
publicoverridestringGetVaryByCustomString(HttpContextcontext,stringcustom)
{
if(custom=="HeaderPageKey")
{
//缓存Header.ascx控件
if(context.Request.IsAuthenticated)
{
returncontext.User.Identity.Name;
}
else
{
return"NoAuthenticated_User";
}
}
returnbase.GetVaryByCustomString(context,custom);
}
用户假如没有上岸,那末缓存一个版本,假如已上岸,那末依据上岸名的分歧缓存别的一个版本,哈哈,为每一个用户都缓存了一个版本,如许做,应当说不是很好的办理办法。
上述缓存手艺能够参考http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/cpguide/html/cpconcachingversionsofpagebasedonparameters.asp
别的,MSPetShop3.0内里也用到了如许的缓存办法,依据Request.Querystring和是不是上岸来缓存分歧的版本,不外,这个缓存仿佛默许没有开启。
有专家说:java不是跨平台,java就是平台,这很好的定义了java的特点。有了java,你只需要等待java平台在新平台上移植。这还不错吧!只是,java不是一个平台,而是多个平台。你需要在这个java平台移植到另一个java平台。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-9 21:35

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表