Веб-браузер C # не показывает обновленный результат

У меня проблемы с веб-браузером или, возможно, с ftp. Я загружаю изображение, и когда я перехожу в веб-браузер, он показывает мне старую фотографию, но загружаемое изображение попадает на ftp и перезаписывается. Вот код:

 webBrowser1.Refresh(WebBrowserRefreshOption.Completely);
        webBrowser1.Navigate("www.google.com");
        openFileDialog1.ShowDialog();
        string filename = Path.GetFullPath(openFileDialog1.FileName);
        
        FileInfo toUpload = new FileInfo(@"upload.jpg");
        FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://fingercube.co.cc/public_html/objimg/" + toUpload.Name);
        request.Method = WebRequestMethods.Ftp.UploadFile;
        request.Credentials = new NetworkCredential("username", "pass");
        Stream ftpStream = request.GetRequestStream();
        FileStream file = File.OpenRead(filename);
        int lenght = 2;
        byte[] buffer = new byte[lenght];
        int bytesRead = 0;
        do
        {
            bytesRead = file.Read(buffer, 0, lenght);
            ftpStream.Write(buffer, 0, bytesRead);
        }

        while (bytesRead != 0);
        file.Close();
        ftpStream.Close();

        
       webBrowser1.Navigate("http://fingercube.co.cc/objimg/"+toUpload.Name);

Он показывает мне старую фотографию каждый раз, но фотография загружается каждый раз. :(


person Mohsin Mushtaq    schedule 07.11.2012    source источник


Ответы (3)


Если предложение кеширования не работает, попробуйте сделать следующее.

this.webBrowser1.Navigate("about:blank");
HtmlDocument doc = this.wbbFinalise.Document;
doc.Write(string.Empty);

Затем перейдите к своему FTP-серверу.

У меня была аналогичная проблема при попытке обновить локально созданную HTTP-страницу в веб-браузере, и это устранило проблему.

person Bearington    schedule 07.11.2012
comment
HtmlDocument doc = this.wbbFinalise.Document; что это за wbbFinalise? у меня проблемы с этим! - person Mohsin Mushtaq; 09.11.2012

Изображение кешируется в кеш IE. Перед обновлением элемента управления необходимо очистить кеш. Посмотрите здесь: http://www.gutgames.com/post/Clearing-the-Cache-of-a-WebBrowser-Control.aspx.

Кроме того, связанный с этим вопрос о SO: Проблема кэширования элементов управления WebBrowser

person kor_    schedule 07.11.2012

получил решение .. проблема была с кешем, простым решением было делать новый запрос каждый раз.

person Mohsin Mushtaq    schedule 18.11.2012