Rendre le fichier XAP Silverlight expiration de la mémoire cache du navigateur par programmation
Comment puis-je prévenir une XAP Silverlight fichier mis en cache par le navigateur web?
La raison pour laquelle je veux faire, c'est en cours de développement je ne veux pas effacer manuellement le cache du navigateur, je suis à la recherche d'une approche programmatique côté serveur.
Vous devez vous connecter pour publier un commentaire.
À l'aide de gestion IIS ajouter un en-tête personnalisé
Cache-Control
avec la valeurno-cache
. Qui va provoquer le navigateur pour vérifier que toute version mise en cache de la XAP est la dernière avant de l'utiliser.Ajouter un paramètre de requête de l'URL de la XAP dans l'élément sur la Page HTML:
Il sera ignoré et casser le cache.
Dans IE8, il y a quelques cache outils de gestion:
Ouvrir les outils de développement:
La solution présentée ici est quelque peu similaire à celle de Michael, mais est automatique et garantit le client sera toujours obtenir une nouvelle version. Cette peut être inefficace selon votre situation.
Depuis Lars dit dans son les commentaires qu'il n'est pas sur un Débordement de Pile, je suis la copie de la réponse ici.
Créer un gestionnaire http personnalisé pour la manipulation *.fichiers xap et définissez vos options de mise en cache à l'intérieur du gestionnaire.
Quelque chose comme ça...
J'ai ajouté une requête paramètre le chemin du fichier xap, afin que je puisse la gérer grâce à la gestion des versions.
Par défaut.aspx code:
Par défaut.aspx.cs code:
Bien tous les exemples ci-dessus dépendent du navigateur de ne PAS mettre en cache le code HTML qui contient le nouveau truc xap nom.... donc, vous venez de déplacer le problème à autre chose.
Et ils sont aussi extrêmement compliqué....
Cependant pour le débogage des cas, au moins, il est facile d'écrire le <object> et <param> balises dans le code javascript pour que le nom change à chaque fois que la page html est utilisé, s'il est mis en cache par le navigateur ou pas!
Cette élude aucun tracas, vous pouvez avoir le contrôle des paramètres du serveur et fonctionne tout aussi bien indépendamment de la technologie de serveur en cours d'utilisation.
Remarque: vous devez écrire la totalité de l'objet de groupe avec la même méthode, parce que mettre une balise de script à l'intérieur de la balise object signifie "faire cela seulement si le navigateur ne supporte pas l'objet.
Ce n'est pas très rare à rencontrer .XAP la mise en cache, ce qui signifie que chaque fois que vous déployez une nouvelle version de l'application Silverlight, le navigateur ne prend pas télécharger la mise à jour .Fichier XAP.
Une solution pourrait être de modifier les propriétés d'IIS. Vous pouvez activer le “Activer l'Expiration de Contenu d'en-tête HTTP” de l'option de sur pour votre .Fichier XAP en suivant ces étapes:
De cette façon, la dernière .XAP (seulement si il y a un plus tard .Fichier XAP) seront téléchargés lorsque vous actualisez votre page sans avoir à fermer le navigateur.
Espérons que cette aide!