wpf model unity-container prism viewmodel

wpf - MVVM: desacopla el modelo de ViewModel



unity-container prism (1)

Todos tendrán sus propias opiniones sobre esto. Personalmente, no me importa usar el modelo directamente en el modelo de vista. Para mí, la idea de un modelo de vista es extender su modelo de tal manera que pueda ser consumido por una vista.

Un ejemplo simple de esto sería el objeto persona. Tendría propiedades de modelo como, por ejemplo, nombre y edad. Cuando llegue a la etapa de modelo de vista, puedo agregarle propiedades como visibilidad, lo que no tendría sentido en el modelo en sí.

Otro punto a tener en cuenta es que consideraría un modelo como los datos y el modelo de vista como el contexto. Por lo tanto, puede tener un modelo de vista de "tarjeta" para una persona, pero también puede tener un modelo de vista de "elemento de lista" que represente el mismo modelo en un contexto diferente, con diferentes propiedades específicas del modelo de vista.

Tiendo a hacer mis modelos usando interfaces donde sea relevante y uso Inversion of control para inyectarlos en el modelo de vista, de ese modo lo único que mi modelo de vista realmente sabe es que necesita un IPerson y que se proporcionará en el constructor .

Como dije, otras personas tendrán diferentes ideas, todas son correctas y depende de usted determinar cuál se adapta a sus necesidades.

Acabo de comenzar a aprender WPF MVVM usando Prism y Unity. Desacoplando la vista desde el modelo de vista funciona bastante bien, pero no entiendo cómo cablear mi modelo de vista y mi modelo. No me siento bien al crear un nuevo EntityObject directamente en mi viewmodel. Ya leí por error la muestra WAF BookLibrary pero es bastante voluminosa y agrega muchas cosas adicionales en torno a la parte esencial (enlace entre vista y modelo de vista), y los documentos de Prism no dicen una palabra (por lo que leí) it) sobre viewmodel - interacción modelo.

¿Alguien conoce una buena fuente que explique cómo usar el modelo de vista y el modelo de una manera limpia o me puede dar algún consejo?

Atentamente

Arrendajo