Lista de argumentos de constructor de controlador masivo cuando se usa DI en MVC

Estoy trabajando en la solución MVC3 de ASP.NET que utiliza la inyección de dependencia con autofac. Nuestros controladores están siendo creados por Autofac y de manera adecuada, y todos los objetos requeridos se pasan correctamente. Estos objetos generalmente incluyen servicios, repositorios y mapeadores que convierten el objeto de dominio a los modelos MVC (vista). Entonces el constructor del controlador se ve algo así como:

public abcController(
        ILogger logger,
        IabcRepository abcRepository,
        IabcService abcService,
        IMapper<AbcDomain, AbcViewModel> abcMapper,
        ...
        )

Desafortunadamente, con el tiempo, esas listas de parámetros del constructor tienden a crecer bastante rápido. Algunos de nuestros controladores esperan ahora 60 o más parámetros.

¿Hemos creado algún anti-patrón aquí?

EDITAR

Debería haber mencionado que tratamos de seguir el patrón de control delgado. También la mayoría de esos parámetros tienden a ser mapeadores, alrededor del 66%. Los métodos de control son generalmente muy simples, y siguen este patrón:

Basados ​​en los parámetros, llamar al servicio o repositorio adecuado.Use el mapeador para convertir el resultado al modelo de vista apropiadoPase el modelo de vista para ver

O este patrón:

Recibe el modelo de la acción posteriorUse el mapeador para convertirlo en un objeto de dominio apropiadoInvocar el servicio o repositorio apropiado con objeto de dominio

Respuestas a la pregunta(4)

Su respuesta a la pregunta