问题描述:无论是本地VS 调试环境还是IIS 测试环境,验证码都可以随机显示,问题是部署到客户的空间上时,验证码点击看不清楚,需要重新刷新的时候,图片验证码依旧是原来的那张,用ashx 的方式跟直接通过类随机生成图片的方式都试过了,还是不行;
在asp.net中使用image控件,当你想动态更换图片内容的时候,直接使用ImageUrl属性指向新的图片路径就行了(eg:Image.ImageUrl=imagepath)。但是当你更新了原来的图片内容而不是直接改变图片路径的时候,即使重修执行image1.ImageUrl=imagepath 图片也不会更新。而且你按刷新也没有作用,图片依旧是原来的那张。
不知道.net在判断ImageUrl属性的时候,为什么前后两次的路径都是一样,它就不改变,而且你强制Dispose都无效。原来解决的方法很简单,只需要在图片路径后面加上一个随机参数,就能使得服务器认为图片改变了
解决方案:Image.ImageUrl = imagepath+"?temp="+DateTime.Now.Millisecond.ToString()