Сохранение тонкости контроллера (слишком много методов действий)

Я работаю над своим первым настоящим проектом ASP.NET MVC и заметил, что контроллер, с которым я работал, становится довольно большим. Это, по-видимому, идет вразрез с наилучшей практикой сохранения тонкости ваших контроллеров.

Я хорошо поработал, чтобы бизнес-логика не попала в контроллеры. Я использую для этого отдельный слой. Каждое действие в первую очередь вызывает метод на бизнес-уровне и координирует конечный результат в зависимости от того, действительно ли состояние модели

. Тем не менее, у контроллера есть большое количество методов действия. Интуитивно я хотел бы разбить контроллер на субконтроллеры, но я не вижу простого способа сделать это. Я мог бы просто разбить контроллер на отдельные контроллеры, но я теряю иерархию, и он кажется немного грязным.

Требуется ли рефакторинг контроллера с большим количеством тонких действий? Если да, то как лучше всего это сделать?

22
задан Erik Philips 14 May 2017 в 02:30
поделиться