2011-11-15 14 views
5

Tengo una página que tiene controles que son cachés de salida (caché de salida parcial). Estos son configuración como esta:Caché de salida parcial clara

[PartialCaching(86400, null, null, "campaign.whatwhere", true)] 
public partial class controls_LatestEnquiriesListCached : System.Web.UI.UserControl 
{ 

... 

Con

public override string GetVaryByCustomString(HttpContext context, string custom) 
{ 
    if (custom == "campaign.whatwhere") 
    { 
     return (CampaignManager.CurrentCampaign.DefaultWorkTypeId ?? 0).ToString() + (CampaignManager.CurrentCampaign.DefaultEnquiryAreaId ?? 0).ToString(); 
    } 
    return base.GetVaryByCustomString(context, custom); 
} 

En Global.asax

¿Cómo puedo configurar para que pueda aclarar esto caché de resultados en una página específica?

¿Es posible configuración como MyPageWithCachedControl.aspx?ClearCache=true ???

+0

duplicado exacto de http://stackoverflow.com/questions/565239/any-way-to-clear-flush-remove-outputcache – Ramesh

+0

también http://stackoverflow.com/questions/37101/how-to-clear-outputcache-for-website-without-restarting-app – Ramesh

+0

¿Cómo son estos duplicados exactos? –

Respuesta

0

puede crear una página aspx que no hace más que borra la memoria caché. Puede tomar el parámetro querystring y hacer que lo elimine mediante la clave de caché.

O puede tratar de encontrar y gestor de memoria caché de ASP.NET.

0

Debe utilizar HttpResponse.RemoveOutputCacheItem(path) para borrar la caché de resultados donde ruta es la ruta absoluta virtual del control de usuario como se especifica en el https://stackoverflow.com/a/37167/30594

0

Uso HTTPResponse.RemoveOutputCacheItem(pathofpage) para borrar la caché de una página en particular.

Por ejemplo:

private void Button1_Click(object sender, System.EventArgs e) 
{ 
    HttpResponse.RemoveOutputCacheItem("/form1.aspx"); 
} 
Cuestiones relacionadas