Всякий раз, когда вам приходилось делать что-то подобное, это означает, что что-то не так с дизайном приложения. Не то чтобы я никогда не делал этого в прошлом, но я не делаю этого сейчас, и это осуждается.
Вместо того, чтобы делать то, что вы делаете сейчас, если вы присваиваете имена своим контроллерам в соответствии с их обязанностями, в конце концов, они являются просто классами и обрабатывают запросы, поступающие от пользователей и т. Д., Тогда вам, возможно, не придется делать это переключение заявление. Например, после присвоения им пространства имен у вас могут быть разные макеты, составленные из разных частичек для ваших представлений, которые могут не требовать от вас этого переключения в вашем контроллере / представлениях, следовательно, сохраняя код чистым.