ASP.NET响应过滤和后缓存替换不兼容

时间:2010-01-26 17:53:54

标签: asp.net filtering response substitution

根据本文http://support.microsoft.com/kb/2014472,您不能同时使用响应过滤器和替换控件。有没有人为此找到解决方法?我正在尝试在写入客户端之前处理完整的HTML响应,并且我广泛使用替换控件。

2 个答案:

答案 0 :(得分:1)

以下是MS Dev Support在此问题上的官方“回答”。

问题:
在以下情况下,ASP.NET中用于修改由另一个进程呈现的HTML的响应过滤的替代方法是什么:
1.其他过程无法修改
2.必须支持缓存后替换

答案:
“是的,你的问题显然是蓝天,这是官方声称不支持。因为后缓存替换会将某些替换块组合到响应字节,而响应过滤期望过滤响应的原始字节(未修改)因此,之前组合的替换块不再被保留。

到目前为止,还没有微软的替代方案。“

答案 1 :(得分:0)

您引用的页面有解决方案:

Disable output caching on pages that are using substitution blocks.

修改

可能的解决方案:

创建所有非动态内容的母版页。缓存那个。不要缓存不断变化的内容。