¿Cuándo debo usar uno frente al otro? Quiero guardar en caché un determinado objeto al inicio y reutilizarlo en la aplicación. ¿Cuál suena como la mejor solución (ViewData o Session)?¿Cuál es la diferencia entre Session y ViewData en Asp.net-MVC?
6
A
Respuesta
12
ViewData
es un objeto por solicitud utilizado para enviar información desde el controlador a la vista.
Cada invocación de acción obtiene su propio ViewData; ViewData no dura más allá de la vista.
Session State es un contenedor para cada usuario de almacenamiento que le permite almacenar datos para una sesión de usuario específico (identificado por una cookie)
Si desea compartir un objeto global, probablemente debería hacer que sea un producto único (en una propiedad static
) o ponerlo en estado de Aplicación.
Marca seguro que es seguro para subprocesos. (O utilice un campo [ThreadStatic]
con cuidado)
Cuestiones relacionadas
- 1. ¿Cuál es la diferencia entre StatelessSession y Session en NHibernate?
- 2. ¿Cuál es la diferencia entre HttpRuntime.Cache y Session?
- 3. Diferencia entre Session y HttpContext.Current.Session
- 4. Diferencia entre ViewData y TempData?
- 5. ¿Cuál es la diferencia entre ViewData y PageData en asp.net MVC 3?
- 6. ¿Cuál es la diferencia entre persist() y merge() en Hibernate?
- 7. ¿Cuál es la diferencia entre Session.Add ("clave", valor) y Session ["key"] = value?
- 8. .Net - ¿Cuál es la diferencia entre una Session Facade y Business Delegate?
- 9. Cuál es la diferencia entre estos dos HttpContext.Current.Session y Session - asp.net 4.0
- 10. ¿Cuál es la diferencia entre + = y = +?
- 11. ¿cuál es la diferencia entre:.! y: r !?
- 12. ¿Cuál es la diferencia entre ".equals" y "=="?
- 13. Cuál es la diferencia entre $ y jQuery
- 14. Cuál es la diferencia entre = y: =
- 15. Cuál es la diferencia entre $ (...) y `...`
- 16. ¿Cuál es la diferencia entre dict() y {}?
- 17. ¿Cuál es la diferencia entre [indefinido] y [,]?
- 18. ¿Cuál es la diferencia entre {0} y ""?
- 19. ¿Cuál es la diferencia entre .ToString (+) y ""
- 20. ¿Cuál es la diferencia entre `##` y `hashCode`?
- 21. ¿Cuál es la diferencia entre "$^N" y "$ +"?
- 22. ¿Cuál es la diferencia entre " " y ""?
- 23. ¿Cuál es la diferencia entre @ y $ y% en MSBuild?
- 24. ¿Cuál es la diferencia entre Session.Abandon() y Session.Clear()
- 25. OpenGL (ES) - ¿Cuál es la diferencia entre frustum y orto?
- 26. ¿Cuál es la diferencia entre la abstracción y la encapsulación?
- 27. ¿Cuál es la diferencia entre Session.Abandon() y Session.Clear() en ASP.Net?
- 28. ¿cuál es la diferencia entre didselectrowindexpath y willselectrowindexpath en iphone?
- 29. ¿cuál es la diferencia entre NULL y Empty en mysql
- 30. ¿Cuál es la diferencia entre longblob y longtext en mysql?