2011-11-15 14 views
5

Mam stronę, która ma formanty, które są buforami wyjściowymi (częściowe buforowanie wyników). Są to ustawienie tak:Wyczyść częściowe buforowanie wyjściowe

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

... 

Z

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); 
} 

W Global.asax

Jak mogę skonfigurować tak mogę usunąć ten bufor wyjściowy na konkretnej stronie?

Czy można ustawić tak jak MyPageWithCachedControl.aspx?ClearCache=true ???

+0

dokładną kopią http://stackoverflow.com/questions/565239/any-way-to-clear-flush-remove-outputcache – Ramesh

+0

także http://stackoverflow.com/questions/37101/how-to-clear-outputcache-for-website-without-restarting-app – Ramesh

+0

Jak są te dokładne duplikaty? –

Odpowiedz

0

Możesz utworzyć stronę aspx, która nie robi nic oprócz czyszczenia pamięci podręcznej. Możesz pobrać parametr zapytania i usunąć go przy użyciu klucza pamięci podręcznej.

Możesz też spróbować znaleźć menedżera pamięci podręcznej ASP.NET.

0

Należy użyć HttpResponse.RemoveOutputCacheItem(path) wyczyścić pamięć podręczną wyjściowego gdzie ścieżka jest ścieżką absolutną wirtualny z kontrolą użytkownika, jak określono w https://stackoverflow.com/a/37167/30594

0

użytkowania HTTPResponse.RemoveOutputCacheItem(pathofpage) wyczyścić pamięć podręczną konkretnej stronie.

Na przykład:

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