2009-07-29 14 views
6

ACTUALIZACIÓN: parece que he entendido mal para qué es TempData y para qué no lo es. Definitivamente no se debe usar para "mantener ciertos datos de toda la sesión" como pregunté inicialmente (ver ASP.NET MVC TempData Is Really RedirectData por qué). He modificado la pregunta en consecuencia.ASP.NET MVC CookieTempDataProvider: ¿alguna experiencia?

¿Alguien ha usado CookieTempDataProvider para TempData storage? ¿Hay advertencias a tener en cuenta (aparte de mantener el almacenamiento de la sesión pequeño)? ¿Algún problema con su uso en granjas web?

Respuesta

5

Uso el CookieTempDataProvider para nuestro sitio web de producción y parece funcionar muy bien. Tenemos una granja web de 2 servidores. El sitio ha estado en vivo durante unos 6 meses y no hemos tenido problemas, aunque el sitio no recibe mucho tráfico. Uso el CookieTempDataProvider para almacenar mensajes de estado que se mostrarán cuando se cargue una vista. Por ejemplo:

  1. El usuario edita un formulario y pulsa el botón Guardar. Esta es una publicación.
  2. En el método de acción POST, guardo los datos y luego envío un mensaje de confirmación a TempData. Luego publico un RedirectToAction, a una acción GET.
  3. En el método de acción GET, recupero el mensaje de TempData y lo coloco en ViewData. Luego hago mis otras cosas de datos y devuelvo la vista.
  4. En la vista, compruebo si el modelo tiene un mensaje y, de ser así, lo visualizo.

A tener en cuenta:

  1. estoy usando ASP.NET MVC 1.0.
  2. Estoy usando MVC Futures 1.0.
  3. El CookieTempDataProvider no funcionó para mí tal como está; Tuve que modificar el código para que funcione: ver this post.
Cuestiones relacionadas