Modifier .net 2 : Cache dépendance et suppression
Modifiersuppression
Suppression du cache sur une page précise
HttpResponse.RemoveOutputCacheItem("/caching/CacheForever.aspx");
Suppression du cache sur toutes les pages ayant une dépendance précise
Response.AddCacheItemDependency("Pages");
Ce type de dépendance peut être géré au niveau du global .asax
protected void Application_Start(Object sender, EventArgs e)
{
HttpContext.Current.Cache.Insert("Pages", DateTime.Now, null,
System.DateTime.MaxValue, System.TimeSpan.Zero,
System.Web.Caching.CacheItemPriority.NotRemovable,
null);
}
Modifier Partage du cache
Suppression de tout cache
<%@ OutputCache location="none" %>
sur tous les composants n'ayant pas variation par paramètres
<%@ OutputCache Duration="30" VaryByParam="none" Shared="true" %>
Attention bug sur le varybycontrol sur le control, le cache semble ne pas prendre en compte ces inputs.
Modifier Par programmation
1/ Navigateur client
Modification complète des header.
Liste des valeurs possibles
Response.ClearHeaders();
Response.AppendHeader("Cache-Control", "no-cache"); //HTTP 1.1
Response.AppendHeader("Cache-Control", "private"); // HTTP 1.1
Response.AppendHeader("Cache-Control", "no-store"); // HTTP 1.1
Response.AppendHeader("Cache-Control", "must-revalidate"); // HTTP 1.1
Response.AppendHeader("Cache-Control", "max-stale=0"); // HTTP 1.1
Response.AppendHeader("Cache-Control", "post-check=0"); // HTTP 1.1
Response.AppendHeader("Cache-Control", "pre-check=0"); // HTTP 1.1
Response.AppendHeader("Pragma", "no-cache"); // HTTP 1.1
Response.AppendHeader("Keep-Alive", "timeout=3, max=993"); // HTTP 1.1
Response.AppendHeader("Expires", "Mon, 26 Jul 1997 05:00:00 GMT"); // HTTP 1.1
Response.AppendHeader("Cache-Control", "no-cache"); //HTTP 1.1
Cela ne permettra pas non plus à l'utilisateur de faire un back, le navigateur affiche alors "cette page a expirée".
Mais les instructions suivantes sont les plus utilisées
Response.Addheader "cache-control","private"
Response.AddHeader "pragma", "no-cache"
' Tout ceci pour désactiver la mise en cache.
____
Equivalence en html
REFERENCE : http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
ModifierLimitation taille et chargement de fichiers
Il existe une limitation dans le machine.config qui peut être overridée en mettant dans le web.config la configuration suivante
chiffre en KiloBytes.
{BR}
<System.Web>{BR}
<httpRuntime maxRequestLength="10000" />{BR}
</System.Web>{BR}