Wie soll ich eine Referenz eines Objekts an einen Controller in MVC übergeben?
-
10-07-2019 - |
Frage
Ich versuche, besser zu werden in MVC / MVP-Stil Muster mit meinen WinForm Anwendungen verwenden und ich bin etwas zu kämpfen, die hier vielleicht jemand mit mehr Erfahrung mit mir helfen kann.
Unten ist mein Grund Projekt-Layout:
Die Klasse G2.cs
nimmt die Ausführung von verschiedenen Threads und enthält eine Start / Stop und andere mit diesen Themen beteiligten verschiedene Methoden. Es ist meine „main“ Klasse nehme ich an. Es enthält die Hauptschleife für meine Anwendung als auch.
Meine GUI besteht aus 3 bildet so weit und eine zugehörige Steuerung für jeden. Die MainForm
hat Start / Stopp-Tasten, die Methoden auf meine G2
Klasse sowie mögliche zukünftige Formen aufrufen müssen.
Was ist der richtige Weg wäre, eine Referenz meiner G2 Klasse alle nach Ansicht der Controller passieren, die es brauchen? Muss ich die G2
Verweis auf das Formular zu übergeben, wenn ich es schaffen und die Form in-Runde geht es zu meinem Controller oder ... ist das kein guter Weg, um Dinge zu benutzen?
Auch bin ich richtig, dass sie die Ansichten Verantwortung ist eine Instanz zu schaffen, die es Controller ist und es „Eigentümer“ der Controller?
Lösung
Wenn G2 ist Hauptprogrammklasse und existiert nur eine Instanz in, ich Singletonmuster auf dieser Klasse verwenden würde -. Keine Notwendigkeit, Verweise auf geben