Таймер или веб-клиент в C# каким-то образом удерживая предыдущие значения переменных

В timer_tick есть веб-клиент, который проверяет URL-адрес, и если этот URL-адрес возвращает что-то, веб-клиент загружает другой URL-адрес, в основном второй URL-адрес используется как GET, поэтому при вызове второго URL-адреса сервер php удаляет значение из базы данных., Поэтому, когда в следующий раз будет проверен 1-й URL, ничего не будет возвращено. Но проблема в том, что даже после отправки 2-го URL веб-клиент, кажется, возвращает старые значения по крайней мере 3-4 раза, когда 1-й URL проверяется в последовательных циклах таймера, а затем отображаются новые данные. Чтобы убедиться, что сервер сам возвращает какие-либо кэшированные данные, я проверил их вручную, перейдя по ссылке напрямую, и не было никаких кэшированных данных, они всегда были актуальными в момент выполнения второго URL-адреса. Итак, кто-нибудь может подсказать, почему это может происходить?

1 ответ

Решение

См. C# WebClient отключить кеш


см. https://msdn.microsoft.com/en-us/library/system.net.webclient.cachepolicy(v=vs.110).aspx


короче WebClient может кешировать. Первый вопрос описывает сложность попыток предотвратить его кеширование.

Другие вопросы по тегам