微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何解决“现有连接被远程主机强行关闭”的查询?

如何解决如何解决“现有连接被远程主机强行关闭”的查询?

我正在使用asp.net c#下载图像,然后我的代码捕获了块并显示了这样的错误

远程主机强行关闭了现有连接。

当我单击下载按钮时,我就直接进入了catch部分,并且在response = (HttpWebResponse)request.GetResponse();函数中收到了此错误

protected void ImageDownloadClick_OnClick(object sender,EventArgs e)

    {

    string stoneid = HdnStoneID.Value;
        MemoryStream MemoryStream = new MemoryStream();
        int readBytes = 0;
        byte[] buffer = new byte[4096];
        string tempFileName = "ABCD-" + 025-A-11-1+ ".jpg";
        HttpWebRequest request = null;
        HttpWebResponse response = null;

        //request = (HttpWebRequest)HttpWebRequest.Create("https://15R-75490.jpg");
        request = (HttpWebRequest)HttpWebRequest.Create("https://025-A-11-1/still.jpg");
        request.Timeout = 8000;  //8000 Not work 
        response = (HttpWebResponse)request.GetResponse();
        try
            {
               
                Stream responseStream = response.GetResponseStream();


                do
                {
                    readBytes = responseStream.Read(buffer,buffer.Length);
                    MemoryStream.Write(buffer,readBytes);
                } while (readBytes > 0);
                Response.Clear();
                response.addheader("content-disposition","attachment;filename=" + tempFileName);
                Response.ContentType = "image/jpeg";


                Response.BinaryWrite(MemoryStream.GetBuffer());
                Response.Flush();
            }
            catch (Exception Ex)
            {
            Stream responseStream = response.GetResponseStream();


            do
            {
                readBytes = responseStream.Read(buffer,buffer.Length);
                MemoryStream.Write(buffer,readBytes);
            } while (readBytes > 0);
            ScriptManager.RegisterClientScriptBlock(this.Page,this.GetType(),"imageNotAvail","javascript:imageNotAvail();",true);
            Response.Clear();
            response.addheader("content-disposition","attachment;filename=" + tempFileName);
            Response.ContentType = "image/jpeg";


            Response.BinaryWrite(MemoryStream.GetBuffer());
            Response.Flush();
        }
    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。