我有 blob 数据的大约 85000 张图像,我从处理程序生成它并作为图像数据类型存储到数据库中,现在当我将它渲染到网页中时,它显然工作得非常慢,所以我想为这个可能找到一些中间解决方案 < strong>cache 我认为这对我来说是最好的解决方案所以任何人都可以给我一些关于这个的想法我的代码看起来像这样
public void ProcessRequest(HttpContext context)
{
context.Response.OutputStream.Write(buffer, 0, byteSeq);
byteSeq = strm.Read(buffer, 0, 8192);
}
和图片
<img src='<%# "handler/product?"+Email.Encryptdes(DataBinder.Eval(Container.DataItem,"product_id").ToString()) %>'/>
现在怎么办我看不到我的页面在 30 秒加载 我应该为图像选择文件夹选项吗?
最佳答案
您可以在处理程序本身中设置缓存,如下所示
context.Response.Cache.SetCacheability(HttpCacheability.Public);
context.Response.Cache.SetExpires(DateTime.Now.AddMinutes(10));
因此,如果浏览器请求相同的数据,它会被缓存 10 分钟。
为了进一步改进,您可以将图像保存在本地文件夹中,然后设置路径。
一些有用的链接
关于c# - 如何缓存处理程序图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19969516/