Estoy creando una aplicación wpf que implementa las siguientes características:
- Tome la entrada del usuario y lea datos de bases de datos
- realizar algunos cálculos al respecto
- Muestre al usuario en múltiples tipos de vistas y escriba los cambios de nuevo en db
Arquitectura propuesta: Base de datos -> Entity Framework -> Repository -> Business Logic -> Data Service -> ViewModel
Razones para usar esta arquitectura: múltiples escenarios presentes en la aplicación (múltiples vistas) y múltiples bases de datos. Por lo tanto, estoy dispuesto a utilizar el repositorio en el medio para la abstracción.
Una advertencia es que el contexto durará mucho tiempo si se implementa el repositorio. Para superar esto, ¿está bien crear un contexto y disponerlos en un bloque using () en cada uno de los métodos crudos?
siéntase libre de sugerir enfoques alternativos.