`
leonardleonard
  • 浏览: 812293 次
社区版块
存档分类
最新评论

消除图片在ie中缓存而无法更新的问题

阅读更多

程序中图片是动态显示的

原先把打算把图片保存在服务器端然后显示

可是由于ie的缓存问题导致图片无法实时更新显示

所以改为把图片存在session中然后再显示

需要保存的时候再保存到本地

//--------------chart.ashx.cs-------------------

using System;
using System.Web.SessionState;
using System.IO;
using System.Web;

namespace WebApplication3
{
 /// <summary>
 /// chart 的摘要说明。
 /// </summary>
 public class ChartHandler : IHttpHandler, IReadOnlySessionState
 {
  public bool IsReusable
  {
   get { return true; }
  }
   
  public void ProcessRequest (HttpContext ctx)
  {
   string chartID = ctx.Request.QueryString[0];
   Array arr = (Array) ctx.Session [chartID];

   ctx.ClearError ();
   ctx.Response.Expires = 0;
   ctx.Response.Buffer = true;
   ctx.Response.Clear ();

   MemoryStream memStream = new MemoryStream ((byte[])arr);
   memStream.WriteTo (ctx.Response.OutputStream);
   memStream.Close ();

   ctx.Response.ContentType = "image/gif";
   ctx.Response.StatusCode = 400;
   ctx.Response.End ();

  }
 }
}

   //--------------chart.ashx   只需要如下一行---------------

<% @ WebHandler language="C#" class="WebApplication3.ChartHandler" codebehind="chart.ashx.cs" %>

//WebApplication3为命名空间

//ChartHandler为chart.ashx.cs中类的名字 

 

//--------------调用说明-----------------

//需要把图片存到byte数组中 假设为byteArr  则

   // ------------------------------------------------------------------------
   //把图片储存在session里面
   // ------------------------------------------------------------------------
   HttpContext     ctx = HttpContext.Current;
   string          chartID = Guid.NewGuid ().ToString ();
           
   ctx.Session [chartID] = byteArr;
   Image1.ImageUrl = string.Concat ("chart.ashx?", chartID);

补充说明:

以 ashx 为扩展名的文件是HTTP handlers ,SimpleHandlerFactory 事件工厂知道如何编译该文件,并实例化IHttpHandler 接口,不需要配置web.config也不需要更新IIS的扩展名映射

分享到:
评论

相关推荐

    IE缓存(程序名称).rar

    IE缓存是浏览器为了提高网页加载速度而存储在本地硬盘上的临时文件。当用户访问网页时,浏览器会下载网页的图片、脚本、样式表等资源,并存入缓存,以便下次访问同一页面时能够快速加载。 **一、IE缓存的工作原理**...

    电脑快递清理IE缓存

    当再次访问同一网页时,浏览器会优先从缓存中读取数据,而非重新从网络下载,从而提高加载速度。但随着缓存文件的积累,这个临时文件夹可能会变得很大,拖慢系统性能。 "电脑快递清理IE缓存"的操作流程简单易懂。...

    删除IE中单个网站域的缓存和Cookie.docx

    本文将详细介绍如何在Internet Explorer(IE)浏览器中删除特定网站域的缓存和Cookie。 首先,理解“域”的概念至关重要。域是互联网上的一个命名系统,用于区分不同的网络资源。例如,baidu.com是一个域,而xxx....

    IE10不显示图片的解决方法.docx

    在使用Internet Explorer 10(简称IE10)时,用户可能会遇到一个问题,即浏览器无法正确显示图片,尤其是在某些特定网站如淘宝网上。这种问题可能是由多种因素引起的,下面我们将详细介绍一些解决方法。 ### 问题一...

    IE出错了,脚本错误,修复小工具

    标题中的“IE出错了,脚本错误,修复小工具”是指在使用Internet Explorer(IE)浏览器时遇到的一些常见问题。这些问题通常与JavaScript或其他脚本语言的执行有关,导致页面加载异常或者显示错误信息。 首先,我们...

    ie11不显示图片的解决方法.docx

    标题“ie11不显示图片的解决方法”指的是在使用Internet Explorer 11(简称IE11)浏览器时遇到的问题,即网页上的图片无法正常显示。这种情况可能是由于多种因素引起的,包括但不限于浏览器设置、兼容性问题、缓存...

    自动清IE和更IE的版本

    在互联网浏览时,IE会存储各种临时文件,包括cookies、缓存图片和文件、历史记录等。这些数据可以帮助网站更快地加载,但也可能包含个人隐私信息。清理这些数据是保护隐私和提高系统性能的有效方法。"自动清IE"功能...

    IE浏览器经典故障大全

    - 故障现象:部分网站在IE中无法正常访问,其他浏览器可以正常打开。 - 解决策略:检查浏览器的兼容性视图设置,确保网站不在受限制的站点列表中,或者尝试重置网络设置。 4. **弹窗广告过多** - 故障描述:浏览...

    IE6兼容性问题及IE6常见bug详细汇总

    在前端开发过程中,IE6浏览器的兼容性问题一直困扰着开发者。由于其独特的解析机制和对CSS、HTML标准的支持不足,导致了许多常见的显示异常。以下是一些关于IE6兼容性和bug的详细解释及其解决方案: 1. **IE6怪异...

    IE恢复器V1.00

    【标题】"IE恢复器V1.00"是一款针对Internet Explorer浏览器的修复工具,旨在帮助用户解决在使用IE过程中遇到的各种问题,如浏览器设置被篡改、网页无法正常显示或者加载速度慢等。该软件可能包含有源码,允许用户...

    IE6与CSS样式兼容问题汇总

    通过执行以下JavaScript代码,可以在IE6中缓存背景图片,从而消除闪烁现象: ```javascript document.execCommand("BackgroundImageCache", false, true); ``` 对于**最小高度(min-height)**的支持,IE6并不理解...

    VeryIDE Bee 互动营销**台 v1.5 UTF-8.rar

    修正 活动汇总中心在 IE6 中样式兼容的问题,感谢 爱威海网 提交问题 修正 IE8 浏览器透明滤镜在部分情况下失效的问题,感谢 湖南妈妈网 提交问题 修正 共享广告不能实时更新缓存的问题,感谢 网友之家 提交问题 ...

    文章管理系统

    2.纠正后台文章编辑,获取编辑器图片无法获取网络图片路径问题 3.后台文章管理,标题后面加入是否含缩略图的图标 4.纠正后台文章编辑,保存远程图片到本地,如果缩略图是网络图片没纠正成本地路径的BUG 5.删除网站...

    CSS HACK收集:关于IE6/FF/google等浏览器hack的方法详细

    最佳实践是尽可能避免在IE6中使用半透明图片,或者使用专为IE6设计的PNG透明解决方案。 4. **IE6下的圆角**: IE6不支持CSS3的圆角属性。一种常见的解决方案是使用图片来模拟圆角,或者接受IE6下无圆角的显示效果...

    300个注册表优化修改文件

    解决IE首页无法更改的问题.reg 禁止IE播放视频.reg 禁止IE的代理服务器.reg 禁止IE浏览器的脚本调试程序.reg 禁止IE浏览器的升级检查.reg 禁止IE显示图片.reg 禁止IE自动安装组件.reg 禁止Outlook Express...

    EXCEL集成工具箱V6.0

    作了18个分类, 而在函数向导对话框中也生成100个左右新的函数,用于扩展Excel的计算功能。且所有功能都通用于 Excel 2002、2003和2007、2010。支持中英文显示与繁简体操作系统、拥有20多款华丽的皮肤界面,支持Excel...

    面试宝典之吊打面试官系列

    - **答案**: 初始化样式是为了消除浏览器默认样式的差异,保证在不同浏览器中页面的一致性。 **34. BFC概念** - **问题**: BFC是什么? - **答案**: BFC(块格式化上下文)是CSS中的一个概念,定义了元素如何在其容器...

    瀑布流实现

    5. **图片加载优化**:在处理大量图片时,为了避免一次性加载所有图片导致的性能问题,可以采用延迟加载(lazy loading)技术。只加载可视区域内的图片,当用户滚动时再加载后续图片。 6. **兼容性考虑**:由于瀑布...

    深层电脑痕迹清理 适合涉密场所使用

    1. **浏览器痕迹清理**:清理各种浏览器(如Chrome、Firefox、IE)的浏览历史、下载记录、缓存图片和文件、Cookies等,防止个人信息泄露。 2. **系统日志清理**:移除系统日志文件,如Windows事件查看器中的记录,...

Global site tag (gtag.js) - Google Analytics