Знаете ли вы тонкий и худой контроллер? Поэтому мой ответ: если вы поместите много строк кода в контроллер, ваш код будет грязным и сложным для модульного тестирования. На самом деле контроллер выполняет только действия, связанные с текущим HttpContext, поэтому, если у вас есть бизнес-логика, доступ к данным, шифрование, ... вы должны разделить проблемы. Причина, по которой вы здесь не используете бизнес-логику, заключается в том, что бизнес принадлежит домену. Так что делегируйте в домен для обработки. Контроллер должен учитывать все действия, связанные с HttpContext (Session, ViewData, TempData, Пользователь в текущем потоке, Глобальные и локальные ресурсы, ...) и делегировать все другие действия другому компоненту. Основное правило - толстая модель и тонкий контроллер для приготовления вкусного торта (phpcake).
Некоторые ссылки, которые вы можете сослаться на тощий и толстый контроллер на здесь и здесь.