C# 未调用GetVaryByCustomString方法
生产服务器出现问题。在本地服务器和测试服务器上,不会重现此问题 .NET 4.5、Sitecore 7.2 几个用户控件具有以下指令:C# 未调用GetVaryByCustomString方法,c#,asp.net,sitecore,outputcache,C#,Asp.net,Sitecore,Outputcache,生产服务器出现问题。在本地服务器和测试服务器上,不会重现此问题 .NET 4.5、Sitecore 7.2 几个用户控件具有以下指令: <%@ OutputCache VaryByParam="*" Duration="300" VaryByCustom="VaryByUrl" %> 以前缓存工作正常。但从最近开始,它突然被破坏(但仅在实时服务器上)。其行为: 带有用户控件(已提到指令)的第1页加载了一些信息(例如“文本A”) 然后我打开另一个页面#2,使用相同的控件,但使用另
<%@ OutputCache VaryByParam="*" Duration="300" VaryByCustom="VaryByUrl" %>
以前缓存工作正常。但从最近开始,它突然被破坏(但仅在实时服务器上)。其行为:
- 带有用户控件(已提到指令)的第1页加载了一些信息(例如“文本A”)
- 然后我打开另一个页面#2,使用相同的控件,但使用另一个数据(应该有“文本B”),但“文本A”显示在该页面的该控件上
- 仅在300秒后,刷新页面#2后,才会显示“文本B”
- 我试图将日志添加到GetVaryByCustomString中,但在live server上未收到任何日志,因此这意味着未调用该方法
谢谢大家! 找到了问题的原因 Global.asax文件在live server上不存在 由于某种原因,它在上次构建期间未交付 当前问题可能已解决:)
public override string GetVaryByCustomString(HttpContext context, string custom)
{
switch (custom.ToLower())
{
case "varybyurl":
return context.Request.Url.DnsSafeHost + context.Request.RawUrl + OutputCacheKey;
}
return base.GetVaryByCustomString(context, custom);
}