Контроллер / Static State Class в приложении WinForms - где поставить?

Я пишу приложение WinForms и хочу иметь дизайн "MVC-Type". На самом деле это больше MVP или MVVM.

План состоит в том, чтобы иметь Центральный контроллер, который выполняет всю фактическую работу, так что формы просто визуализируют ViewModels и обрабатывают пользовательский ввод, но все, что на самом деле что-то делает, проходит через контроллер.

Мне просто интересно, если это хорошая идея, и где поставить контроллер? В настоящее время идея состоит в том, чтобы иметь статический класс, который инициализируется в Program.cs (отправка в некоторых зависимостях, таких как IMyDatabaseRepository), чтобы он просто оставался контроллером, который делегирует работу между пользовательским интерфейсом и моделью.

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

Ответы на вопрос(3)

Ваш ответ на вопрос