Кэширование и элемент управления WebBrowser в .Net
используя элемент управления WebBrowser в .Net для выполнения некоторых сторонних партнерских маркетинговых преобразований.
У меня есть таблица очередей в базе данных со всеми сценариями / изображениями для выполнения. Я перебираю все это в приложении WinForms с элементом управления WebBrowser. После того как я'Я выполнил сценарий / изображение. Я удаляю элемент управления WebBrowser, устанавливаю его на ноль и обновляю его новым экземпляром элемента управления WebBrowser.
Рассмотрим этот URL:HTTP: //renderserver/RenderScript.aspx ID = 1
RenderScript.aspx отображает изображение с URL, например:HTTP: //3rdparty/img.ashx ID = 9343
Я использую Fiddler для просмотра всех запросов и ответов, и когда один и тот же URL-адрес выполняется дважды, он использует какой-то кэш. Этот кеш существует под самим элементом управления WebBrowser.
Этот кеш означает, что img.ashx не вызывается.
Я пытался использовать Internet Explorer для запроса URL:HTTP: //renderserver/RenderScript.aspx ID = 1 и нажмите F5. Тогда это запрашивается отлично.
Но если я щелкаю по адресной строке и нажимаю Enter, чтобы снова перейти к тому же URL - он не запрашивается. Когда я использую Firefox, он будет запрашивать страницу и изображение каждый раз, независимо от того, использую ли я F5 или перемещаюсь из адресной строки.
Я нашел несколько вызовов Win32 API (http://support.microsoft.com/kb/326201) который смог очистить кеш. Он работал на моей локальной машине. Затем приложение было развернуто на сервере под управлением Windows Server 2003 Standard x64 (мой собственный компьютер - Vista x86).
И теперь API вызывает очистить кешт работа.
Любые идеи о том, почему API не вызываетработает на Windows Server, но работает на Vista? Обе машины работают под управлением IE8.