В настоящее время я поддерживаю приложение, где, к сожалению, у нас появилось слишком много методов Action. Вдобавок к этому архитектура этого проекта не является честной с самого начала, и каждый разработчик продолжал добавлять бизнес-логику в методы действий класса Controller вместо того, чтобы сохранять ее на другом бизнес-уровне. Итак, теперь один из наших классов контроллера достиг 15000 строк кода, и я не хочу использовать этот класс еще больше, добавив еще один метод действий.Класс контроллера содержит слишком много методов
Любые предложения о том, как мы можем реорганизовать это или можем ли мы использовать какой-либо класс частичного контроллера или любой другой лучший способ?
N.B: Я знаю, что мы можем использовать тонкие контроллеры, перемещая код на другой уровень, но все же мы закончим слишком много методов.
Вы можете подумать о том, чтобы сделать этот класс «частичным» и движущимися частями этого класса для разных файлов. – FrankerZ
У вас всегда может быть несколько контроллеров. Все зависит от того, что вам действительно нужно делать - вполне возможно, что вы хотите сотню различных действий на одном контроллере, и все в порядке. Но, возможно, вы обнаружите, что действия действительно не принадлежат друг другу, и вы можете отделить исходные контроллеры несколькими. – Luaan
Я не вижу причин, по которым вы не могли написать частичные классы для контроллера. Я никогда не пробовал, но в конце концов, это просто класс, как и любой другой, не так ли? Но на самом деле это не решает вашу проблему, потому что в intellisense, класс-проводнике и т. Д. Он все равно покажет весь большой список. Думаю, ты знаешь ответ в своем сердце. Время для начала рефакторинга в разные, меньшие, сосредоточенные контроллеры и, возможно, смотреть видео Pluralsight на SOLID, прежде чем вы начнете. И будьте готовы к этому несколько недель ... – bgs264