Stavo cercando di rendere un sito meno di sessione. Quindi aggiungi <sessionState mode="Off" />
al mio web.config. Dopo che se eseguoUtilizzo di TempData mentre <sessionState mode = "Off" />
Session["test"] = "yes";
ottengo un errore “riferimento non impostato a un'istanza di un oggetto. "Questo va bene.
Ma con questa configurazione è possibile impostare
TempData["test"] = "yes";
nel controller e stampare TempData["test"];
in vista pagina. Funziona bene.
Come da MSDN "Il valore della proprietà TempData è memorizzato nello stato sessione".
Quindi se menziono <sessionState mode="Off" />
come funziona TempData? ASP.NET sta ancora conservando TempData in sessione o da qualche altra parte?
Ho capito ITempDataProvider e grazie per questo. Ho anche scoperto che al posto della sessione puoi tenere i dati temporanei nei cookie da qui. http://afana.me/post/session-less-controllers-and-TempData-ASPNET-MVC.aspx. –
Sì, il ragazzo ha implementato il proprio provider TempData basato sui cookie. –
Usiamo TempData per singola richiesta, giusto? Quindi impostiamo il valore per TempData nel controller e apriamo la pagina View. Ho un dubbio su "Prova a rimuoverlo dalla tua vista e riceverai un errore". Puoi spiegarlo per favore? –