13 messaggi dal 06 ottobre 2011
Buongiorno,
scrivo perchè nell'applicazione che sto sviluppando ci sono dei controlli che utilizzano la proprietà autopostback per cambiare il contenuto di alcune textbox ed eseguire altri controlli lato server.
Il problema che ho riscontrato è che quando cerco di tornare indietro a seguito di un submit del form senza perdere i dati immessi all'ultimo stato della pagina, il browser restituisce il messaggio di errore Pagina scaduta.
Qualcuno ha idea di come risolvere/ aggirare il problema?
Modificato da vasco.macchiarelli il 11 novembre 2011 12.10 -
Modificato da vasco.macchiarelli il 12 novembre 2011 12.31 -
Modificato da vasco.macchiarelli il 12 novembre 2011 12.32 -
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao, credo che quel problema si presenti disabilitando la cache. Per caso nella pagina hai una direttiva del genere?
<%@ OutputCache Location="None" NoStore="true" %>
(se non la trovi controlla anche nel web.config e nel codice)

Considera di riabilitare la cache, magari trovando un compromesso per la durata, che non sia eccessiva altrimenti quando l'utente ri-visita la pagina potrebbe trovare dati non aggiornati. La Duration è espressa in secondi, quindi ad esempio:
<%@ OutputCache VaryByParam="*" Duration="30" %>

Come ultimo suggerimento, prova a navigare la tua applicazione anche con altri browser, così vedi come si comporta ciascuno di essi in questo caso.

ciao,

Enjoy learning and just keep making
13 messaggi dal 06 ottobre 2011
No non è presente nessuno dei due tag nè nel codice nè nel webconfig, non riesco a capire... ho provato perfino a lasciare il codice nel Page_Load vuoto e al click sul bottone di conferma faccio cambiare solo la visualizzazione o meno di un bottone nascosto.
Sempre errore.... :S
11.886 messaggi dal 09 febbraio 2002
Contributi

ho provato perfino a lasciare il codice nel Page_Load vuoto e al click sul bottone di conferma faccio cambiare solo la visualizzazione o meno di un bottone nascosto.

Ok, prova a rifare la stessa cosa in un progetto web completamente nuovo. Ottieni lo stesso errore?

Ho l'impressione che da qualche parte ci sia del codice che disabilita la cache. Ad esempio:
Response.AddHeader("Cache-Control", "no-cache");
Response.Expires = 0;
Response.Cache.SetNoStore();
Response.AddHeader("Pragma", "no-cache");


Comunque, per non andare a tentoni, dovresti esaminare le intestazioni HTTP che arrivano dal server insieme alla risposta. Da lì si può capire senza ombra di dubbio se la cache client viene usata o meno.

Fai così: da internet Explorer 9 premi il tasto F12 per far apparire la finestra degli "stumenti di sviluppo". Da lì clicca la scheda "Rete" e poi il tasto "Avvia Cattura". Ora accedi alla pagina del tuo sito che ti sta dando problemi. Nella griglia vedrai apparire tante voci, una per ogni file richiesto al server. Lì in mezzo trova quella relativa alla tua pagina aspx e poi fai doppioclick su di essa. Ora clicca la scheda "Intestazioni risposte".

Se la cache è disabilitata, vedrai comparire voci tipo queste:
Pragma no-cache
Cache-Control no-cache, no-store
Expires <data e ora corrente oppure -1>


Inoltre, hai provato a visitare il tuo sito con altri browser? Che comportamento hanno?

ciao,
Modificato da BrightSoul il 15 novembre 2011 19.56 -

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.