Unity


La aplicación utilizó el Framework de inyección de dependencias Unity.
Para poder "resolver" dependencias se desacoplaron los servicios añadiendo interfaces y suministrandolas por constructor en los controladores. Del mismo modo en los servicios se desacoplaron los repositorios a los que se llamaban.

Con Unity también utilizamos Interception en la capa de Servicios como se ha explicado anteriormente.

Para dejar rastro de las queries generadas por LINQ se utiliza DbCommandInterceptor. Un buen método para optimizar queries costosas.