Masywna lista argumentów konstruktora kontrolera podczas używania DI w MVC

Pracuję nad rozwiązaniem ASP.NET MVC3, które wykorzystuje wstrzykiwanie zależności z autofac. Nasze kontrolery są tworzone przez autofac i poprawnie, a wszystkie wymagane obiekty są poprawnie przekazywane. Obiekty te zwykle obejmują usługi, repozytoria i programy odwzorowujące konwertujące obiekty domeny na modele MVC (widok). Tak więc konstruktor kontrolera wygląda trochę tak:

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

Niestety, z czasem te listy parametrów konstruktorów rosną dość szybko. Niektóre z naszych kontrolerów oczekują teraz 60 lub więcej parametrów.

Czy stworzyliśmy tutaj jakiś anty-wzór?

EDYTOWAĆ

Powinienem był wspomnieć, że staramy się podążać za cienkim wzorem kontolera. Również większość tych parametrów ma tendencję do mapowania - około 66%. Metody kontroli są zwykle bardzo proste i podążają za tym wzorem:

Na podstawie parametrów wywołaj odpowiednią usługę lub repozytoriumUżyj programu mapującego, aby przekonwertować wynik na odpowiedni model widokuPrzekaż model widoku do wyświetlenia

Lub ten wzór:

Odbierz model z akcji postUżyj programu odwzorowującego, aby przekonwertować go na odpowiedni obiekt domenyWywołaj odpowiednią usługę lub repozytorium z obiektem domeny

questionAnswers(4)

yourAnswerToTheQuestion