Klasa kontrolera / stanu statycznego w aplikacji WinForm - Gdzie umieścić?

Piszę aplikację WinForm i chcę mieć projekt typu „MVC”. Właściwie to więcej MVP lub MVVM.

Planuje się, aby centralny kontroler wykonał całą pracę, tak aby formularze po prostu wyświetlały ViewModels i obsługiwały dane wejściowe użytkownika, ale wszystko, co faktycznie robi coś, przechodzi przez kontroler.

Zastanawiam się tylko, czy to dobry pomysł i gdzie umieścić kontroler? Obecnym pomysłem jest posiadanie klasy statycznej, która jest inicjalizowana w Program.cs (Wysyłanie w niektórych zależnościach, takich jak IMyDatabaseRepository), tak aby pozostawała kontrolerem, który deleguje pracę między interfejsem użytkownika a modelem.

Jak można się domyślić, pochodzę z tła internetowego i mam niewielkie doświadczenie z architekturą WinForm. Poprzednio moim MainFormem była klasa Controller, zawierająca wszystkie zmienne stanu, co oczywiście oznacza, że ​​mój MainForm to moja aplikacja, a nie tylko część interfejsu użytkownika.

questionAnswers(3)

yourAnswerToTheQuestion