使用Response.BinaryWrite方法输入时,为什么有些客户是直接浏览图片而有些是下载?why?

解决方案 »

  1.   

    protected void Page_Load(object sender, EventArgs e)
    {
        WebRequest myrequest = WebRequest.Create("http://xxxxx/userface.jpg");
        WebResponse myresponse = myrequest.GetResponse();
        Stream imgstream = myresponse.GetResponseStream();
        System.Drawing.Image img = System.Drawing.Image.FromStream(imgstream);
        MemoryStream ms = new MemoryStream();
        img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
        Response.ClearContent(); //需要输出图象信息 要修改HTTP头 
        Response.ContentType = "image/gif";
        Response.BinaryWrite(ms.ToArray()); 
    }
      

  2.   

    补充说明
    ContentType 已有设置
    也给
    Response.AddHeader()添加了ContentType现在的问题就是为什么不同的客户端结果不一样,有的可以在网页上直接输出图片,有的却是下载?
    是什么原因?还是因为IE的设置不同??
      

  3.   

    context.Response.Clear();
                context.Response.ContentType = ContentType;
                context.Response.ContentEncoding = System.Text.Encoding.UTF7;
                context.Response.AppendHeader("Content-Type", FileSuffixName);
                context.Response.AppendHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(_fileName));
                context.Response.BinaryWrite(byteFileContent);
                context.Response.End();
    我一直这样写,没有啥问题,估计是IE设置的问题吧,直接打开了?