Principales respuestas
como crear y trabajar con una Model View En MVC 3???

Pregunta
-
Hola amigos, junto con saludarlos y pedirles su ayuda/guia les comento mi inquietud:
lo q pasa es q estoy postulando a un trabajo y debo dar un examen en el cual me piden trabajar con las Models Views, soy practicamente novato en mvc y mi duda es esa como logro crear (estructurar) una Model View, ya q solo he trabajado con las capas normales de MVC, pero no se a q nivel de abstraccion se trabajan las modelsa views, como se trabaja con ellas y como las creo??? por favor agradeceria q me guien para saber como empezar a trabajar con las models views, ya q por la generalidad de explicacion q me dieron es q es una especie de fusion de ambas,pero no se como crearlas, porfavor agradeceria su guia, de antemano muchas gracias.... saludos
Respuestas
-
Bueno,
Supongo que te refieres a los Viewmodels... Un viewmodel no es nada más que una clase que contiene una abstracción de los datos que debe mostrar una vista. En ASP.NET MVC son la base de comunicación entre los controladores y las vistas (las vistas acceden a su viewmodel a través de su propiedad Model).
La M de MVC, el Modelo, engloba la totalidad de lógica de tu aplicación. Dicho Modelo puede ser totalmente independiente de la tecnología de presentación usada, y así podrías tener una versión web (ASP.NET MVC), una de escritorio (WPF), etc... todas esas aplicaciones serían capas de presentación que trabajarían con el mismo Modelo. Eso implica que el Modelo no está, ni debe estar, adaptado a las necesidades concretas de las vistas ASP.NET MVC (que por lógica pueden ser distintas que las necesidades de las vistas de un cliente de escritorio o incluso de uno móvil). Por tanto los controladores interactúan con el Modelo, y cuando deben mandar datos a las vistas, los "preparan" antes (los adaptan exactamente a la que la vista debe mostrar). Esa "preparación" de los datos es lo que se conoce como ViewModel.
La relación entre ViewModels y vistas ASP.NET MVC suele ser 1:1, es decir a cada vista le corresponde su ViewModel y cada ViewModel está hecho "a medida" por una vista en concreto (aunque eso dependerá de cada caso, obviamente). A diferencia del Modelo que forma "la capa de lógica", los ViewModels forman parte de la aplicación ASP.NET MVC y conforman capa de presentación.
Un saludo!
Eduard Tomàs Blog: http://geeks.ms/blogs/etomas -- Twitter: eiximenis
- Propuesto como respuesta José M. AguilarMVP lunes, 18 de junio de 2012 16:32
- Marcado como respuesta Eder Costa lunes, 29 de octubre de 2012 11:57
Todas las respuestas
-
Bueno,
Supongo que te refieres a los Viewmodels... Un viewmodel no es nada más que una clase que contiene una abstracción de los datos que debe mostrar una vista. En ASP.NET MVC son la base de comunicación entre los controladores y las vistas (las vistas acceden a su viewmodel a través de su propiedad Model).
La M de MVC, el Modelo, engloba la totalidad de lógica de tu aplicación. Dicho Modelo puede ser totalmente independiente de la tecnología de presentación usada, y así podrías tener una versión web (ASP.NET MVC), una de escritorio (WPF), etc... todas esas aplicaciones serían capas de presentación que trabajarían con el mismo Modelo. Eso implica que el Modelo no está, ni debe estar, adaptado a las necesidades concretas de las vistas ASP.NET MVC (que por lógica pueden ser distintas que las necesidades de las vistas de un cliente de escritorio o incluso de uno móvil). Por tanto los controladores interactúan con el Modelo, y cuando deben mandar datos a las vistas, los "preparan" antes (los adaptan exactamente a la que la vista debe mostrar). Esa "preparación" de los datos es lo que se conoce como ViewModel.
La relación entre ViewModels y vistas ASP.NET MVC suele ser 1:1, es decir a cada vista le corresponde su ViewModel y cada ViewModel está hecho "a medida" por una vista en concreto (aunque eso dependerá de cada caso, obviamente). A diferencia del Modelo que forma "la capa de lógica", los ViewModels forman parte de la aplicación ASP.NET MVC y conforman capa de presentación.
Un saludo!
Eduard Tomàs Blog: http://geeks.ms/blogs/etomas -- Twitter: eiximenis
- Propuesto como respuesta José M. AguilarMVP lunes, 18 de junio de 2012 16:32
- Marcado como respuesta Eder Costa lunes, 29 de octubre de 2012 11:57
-
Muchas gracias Eduard por darte el tiempo de responderme, me ha sido aclaratoria tu respuesta, ademas estoy haciendo la aplicacion de practica de carrito de compras en mvc 3 y justo voy en esa parte de las viewModels, asi es q ya me va quedando mas claro y a la vez voy soltando la mano, nuevamente gracias y cualquier cosa investigo y si no quedo muy claro consulto aca, un saludo.