Da quanto ho letto, le informazioni inserite in TempData saranno presenti per la richiesta corrente e per la successiva richiesta (in modo che sia possibile passare le informazioni attraverso i reindirizzamenti). Il problema è che se sfoglio un'azione del controller che non reindirizza, le informazioni in TempData saranno ancora lì per la richiesta successiva. Sto usando TempData per archiviare i messaggi informativi che vengono visualizzati all'utente, quindi ora sto ricevendo anche i messaggi per la prima schermata sulla seconda schermata.ASP.NET MVC: cancellazione TempData dopo l'esecuzione di un metodo controller
C'è un buon momento nel ciclo di vita del controller per cancellare TempData una volta che non viene più utilizzato?
Ma cosa succede se l'azione del mio controller _is_ reindirizza? Non posso usare ViewData in quel caso perché i messaggi non ci sono più. Esiste un modo migliore per gestire messaggi display come questo rispetto alla memorizzazione in TempData/ViewData? –
È necessario utilizzare ViewData quando non si effettua il reindirizzamento e TempData durante il reindirizzamento. In entrambi i casi tutto il resto è automatico. Per visualizzarli, quindi scrivere TempData ["chiave"] ?? ViewData ["chiave"] nella tua vista. –