MVP-Muster - Passive Ansicht und Offenlegung komplexer Typen über IView (Asp.Net, Web Forms)

Ich habe kürzlich zu MVP-Pattern mit einem Passive-View-Ansatz gewechselt. Ich finde es sehr angenehm, mit der View-Oberfläche zu arbeiten, wenn nur grundlegende clr-Typen verfügbar gemacht werden, z. B. Zeichenfolgen, die TextBoxen zugeordnet sind, IDictionary, die DropDownLists zugeordnet sind, IEnumerable, das einigen Rastern zugeordnet ist, Repeater.

Dieser letzte Ansatz funktioniert jedoch nur, wenn es in diesem Raster nur um eine Spalte geht. Wie kann ich den Multirow-Inhalt des Rasters in IView zuordnen? Im Moment kommen mir zwei Lösungen in den Sinn, die beide nicht brillant sind:

Erstellen Sie ein DTO für den Inhalt des Rasters und machen Sie das IEnumerable in IView verfügbarStellen Sie die IEnumerable oder nur das "Raster" wie in IView.

Die erste Lösung scheint die Passive-View-Regeln zu brechen, während das Supervising-Controller-Muster näher rückt, und die zweite Lösung scheint das gesamte MVP-Muster zu brechen. Wie würden Sie damit umgehen?

Danke, Lukasz

Antworten auf die Frage(1)

Ihre Antwort auf die Frage