2011-08-28 3 views
4

Nous sommes confrontés à un problème spécifique où dans le clic de backbutton, la méthode get par défaut ne se déclenche dans asp.net mvcbouton Précédent ne demande pas asp.net méthode mvc get

des solutions spécifiques?

+2

pourriez-vous nous donner un peu plus d'informations? le code? –

+0

Est-ce que ce navigateur est de retour ou un bouton que vous avez placé sur la page? – griegs

+0

Oui Bouton Précédent du navigateur – subramn

Répondre

5

Si la page est mise en cache dans le navigateur, elle utilise celle du cache.

Essayez de dire à la réponse de ne pas mettre en cache. Vous pouvez le faire avec un ActionFilter ou globalement dans Global.asax.

httpContext.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1)); 
    httpContext.Response.Cache.SetValidUntilExpires(false); 
    httpContext.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches); 
    httpContext.Response.Cache.SetCacheability(HttpCacheability.NoCache); 
    httpContext.Response.Cache.SetNoStore(); 

Plus d'options ici:

Disable browser cache for entire ASP.NET website

+0

J'ai essayé ce qui précède et cela ne fonctionne pas. tout ce que je fais mal? – subramn

0

Essayez dans votre section HTML:

<meta http-equiv="CACHE-CONTROL" CONTENT="NO-CACHE"> 

qui arrêtera la page mise en cache par votre navigateur.

+0

qui devrait être dans votre section HTML "HEAD" –

6

si vous voulez juste une action spécifique pour obtenir du serveur chaque fois que l'utilisation

[OutputCache(NoStore = true, Duration = 1)] 

comme un attribut sur votre action comme celui-ci

[HttpGet] 
    [OutputCache(NoStore = true, Duration = 1)] 
    public ActionResult Index() 
    { 
     ........ 
    } 
Questions connexes