Lo que estoy usando:PRISM + MEF + MVVM: ¿No estás seguro de dónde empezar realmente?
- Visual Studio 2010
- Microsoft .NET Framework 4
- Prisma v4
Lo que estoy tratando de averiguar es cómo empezar con Prisma + MEF mientras se mantiene el patrón MVVM. Cuando entro en Prism Quickstarts, tiene un Prism + MEF, pero los comentarios en el proyecto especifican que el ejemplo de Quickstart no implementa MVVM. No estoy seguro de qué mezclar/combinar para que mi caparazón siga MVVM (y regiones).
Básicamente, quiero usar MEF para poder cargar ensamblajes (módulos) en tiempo de ejecución. Y, quiero configurar regiones en mi Shell y hacer que Shell use MVVM (para poder enlazar datos con el shell). Cada ejemplo en línea es Prisma, Prisma + MVVM, Prisma + Unidad, ejemplos de Silverlight, Prisma + MEF, etc. Pero no puedo encontrar ningún ejemplo o información de WPF Prism + MEF + MVVM. Realmente no tengo idea de cómo configurar mi bootstrapping y demás para ponerme en marcha.
Una vez que se hace esa parte, estoy seguro de que averiguaré cómo cargar otros controles usando MVVM en mi caparazón. Cualquier ayuda sería excelente, especialmente los recursos que se relacionan directamente con esta situación como apuestos a algo similar (es decir, Prism + Unity y sin MEF). ¡Gracias!
¿Alguna vez encontró un ejemplo de MEF + Prism + MVVM? No puedo encontrar ninguno y un ejemplo vale mil enlaces de archivos de ayuda. – JohnC
@JohnC: Bueno, la Guía del desarrollador de Prism fue útil, pero no, no encontré ningún ejemplo concreto de Prism + MEF + MVVM. Sin embargo, al observar cada componente individualmente, las cosas tienen más sentido. Prism es un marco que ofrece utilidades y clases que lo ayudan a escribir una aplicación MVVM. MEF es un marco de plug-in. La razón por la cual Prism y MEF pueden entrelazarse es porque Prism es extensible. No he descubierto cómo manejar Regions (usando MEF), pero descubrí que el AggregateCatalog es el corazón y el alma de Prism + MEF. – michael
@JohnC: MVVM es un estilo de diseño, y naturalmente va con Prism. El caso es que Prism ofrece bastantes herramientas para ayudar a manejar situaciones especiales de MVVM (por ejemplo, proporciona DelagateCommand y tiene ejemplos sobre cómo crear un CompositeCommand). Ofrece Regions (que aún no he descifrado por completo). Ofrece clases como NotificationObject, etc. Encontré formas de usar MEF para importar mi ViewModel en mi vista y exportar mi View a mi Bootstrapper. Existen bastantes fuentes, simplemente no un GRAN ejemplo, sino muchos pequeños ejemplos que recompuse. – michael