2011-06-01 16 views
10

Después de leer de muchas fuentes diferentes, estoy muy confundido sobre cómo la Visualización y el Modelo deberían comunicarse en el patrón MVC. A mi entender, el accepted answer of this post y this article from Apple dicen que la comunicación de los dos debe hacerse a través del controlador. Mientras que MVC page in Wikipedia, ASP.NET MVC page y this article in MSDN muestran que existe una asociación directa entre Vista y Modelo. Entonces, de acuerdo con the answer in here, ¿a qué se refiere el artículo de Apple es en realidad MVP no MVC? ¡¡Gracias por cualquier ayuda!!Comunicación entre la Vista y el Modelo en MVC

+1

No es posible que la Vista y el Modelo interactúen sin un Controlador. La Vista puede estar fuertemente tipada a un tipo de Modelo, pero el controlador debe estar en el medio. –

+0

En la arquitectura MVC, el Controlador envía información a la Vista. – mdaguerre

+1

Creo que esto puede ser una confusión que surge del mapeo de bases de datos a objetos, y la vista que usa estos objetos para obtener datos. De alguna manera estás "accediendo al modelo", pero en realidad no estás ejecutando las consultas SQL, etc. para obtener los datos. Ese es el tipo de falta de separación desaprobado en MVC. –

Respuesta

2

Hay más de una respuesta. Eventualmente puedes hacer lo que sea que se adapte a tus necesidades. Uso un controlador + ViewModels para conectarme a la vista. La vista nunca usa el modelo. justo lo que el controlador le da.

Hay una bonita explicación de todos los modelos de Steven libro sandarson, Página 49 (variación sobre MVC).

Cuestiones relacionadas