如果我们使用带有缓存配置文件的aspx页面,则服务器会缓存使用aspx页面加载的图像。因此,如果十个客户端通过aspx页面(相同的URL)加载相同的图像,则对于一个客户端,图像将从数据库中获取,对于其他九个客户端,它将被缓存。
当我们使用HttpHandler时,这不会发生。始终从数据库中提取图像。我们尝试了所有不同的设置而没有任何成功。 (我们检查了this链接,但无法在服务器端缓存。)
答案 0 :(得分:1)
我无法根据使用缓存配置文件的经验回答,所以我不确定这是否有帮助。
在幕后,ASP.NET WebForms由HttpHandlers驱动 - 由MS编写(正如您所期望的那样)。当您编写自己的Http Handler时,您不会自动获得System.Web.UI.PageHandlerFactory处理程序具有的所有功能(默认情况下为.aspx页面/请求之后) - 您必须将其带入(或者发展它自己。
也许这就是你遇到的问题 - 可能是aspx页面正在利用缓存配置文件功能,因为System.Web.UI.PageHandlerFactory已经开箱即用“集成”了,就像你写的那样你自己就是不存在(默认情况下) - 因此它们不起作用。