Hola a tod@s,

voy a escribir sobre un problema que he tenido con el cacheo de las peticiones que hace el objeto webclient y como lo «he solucionado» mientras desarrollaba una aplicación para Windows Phone.

Bueno básicamente tengo que acceder a una dirección web y leer la información que tiene esa web para luego tratarla. Esa dirección web es consultada cada poco tiempo porque la información cambia cada 2 o 3 minutos, así que uso el objeto webclient de la siguiente manera:

capturawebclient1El código es de lo mas simple, pues bien la única forma de que me actualizase la información era salir de la aplicacion y volverla a abrir para que la caché del webclient se vaciara.

Como al ejecutar este código en Windows Phone me cachea la web que consulto y cada vez que lo hago obtengo la misma información, después de mirar todos los parámetros y propiedades del objeto webclient, he llegado a la conclusión de que la única manera que tengo de obtener la información real de la web en cualquier momento es generar una nueva url pero que me siga llevando a la misma pagina.

¿Como lo he hecho? pues probando a añadir un parámetro que no signifique nada a la url original de la siguiente manera:

urlWebclient

Esta es la única forma con la que he hecho funcionar la petición y obtener el contenido correcto sin que estuviera en la caché del webclient.

No me parece la mejor solución pero es por aportar una idea a quien como yo se esté volviendo loco con esto, es un parche para seguir funcionando. Si a alguien le ha pasado lo mismo y lo ha solucionado de otra forma que me deje un comentario y añadiré su solución al post.

 

Un saludo 😉