Estaba intentando hacer un sitio como sesión menos. Así que agrega <sessionState mode="Off" />
a mi web.config. Después de que si ejecutoUsando TempData mientras <modoSesiónState = "Desactivado" />
Session["test"] = "yes";
me da un error “referencia a objeto no establecida como instancia de un objeto. "Esto está bien.
Pero con esta configuración puedo configurar
TempData["test"] = "yes";
en el controlador e imprimir TempData["test"];
En la vista página. Está funcionando bien.
Según MSDN "El valor de la propiedad TempData se almacena en estado de sesión".
Entonces, si menciono <sessionState mode="Off" />
, ¿cómo funciona TempData? ¿Sigue ASP.NET almacenando TempData en sesión o en otro lugar?
Entiendo acerca de ITempDataProvider y gracias por eso. También descubrí que, en lugar de la sesión, puede guardar los datos temporales en las cookies desde aquí. http://afana.me/post/session-less-controllers-and-TempData-ASPNET-MVC.aspx. –
Sí, el tipo ha implementado su propio proveedor TempData basado en cookies. –
Usamos TempData para solicitud única ¿no? Así que establecemos el valor de TempData en el controlador y accedemos a la página Ver. Me queda una duda sobre "Intenta eliminarla de tu vista y obtendrás un error". ¿Puedes por favor explicar eso? –